Release Notes for E2E Bridge 5.1 RUNTIME Up to version 5.1.63 (see PDF Release Notes for latest ones) ==================== E2E RUNTIME - 5.1.63 ==================== BUGFIXES ======== - Can not query persistent state offline (5.1.62 did not work for services without SQL adapter) ==================== E2E RUNTIME - 5.1.62 ==================== FEATURES ======== - Faster concat() BUGFIXES ======== - Corrupt data converting Java BigInteger to Runtime integers - Can not query persistent state offline - Ensured there are no additional line breaks in transaction log - non ascii in json parsing - UI: table translations don`t work anymore - Mock backends and "&". - Log error details if opening SQLite database fails ==================== E2E RUNTIME - 5.1.61 ==================== FEATURES ======== - Persistent state: limit BLOB storage on Oracle databases - attribute "xsi:nil" may now either "true" or "1" - string function join() - UI: Support mockup API - SOAP composer: format of XML documents BUGFIXES ======== - Runtime doe not support special characters in path - persitent state: self transition to a history state - UI: Integer validation does not allow negative number - UI: JS Libs: Support export table data to clipboard or Excel compliant CVS file - UI: JS Libs: Link displayed, but is not link - UI: JS Libs: Internal: bind XML element value to controller does not work CHANGES ======= - support Windows 64-bit ==================== E2E RUNTIME - 5.1.60 ==================== FEATURES ======== - UI: add the possibility to turn off the history BUGFIXES ======== - fix packages (introduced 5.1.59) ==================== E2E RUNTIME - 5.1.59 ==================== FEATURES ======== - Log warning if stacksize exceeds a given limit - Write E2ESendSignalAction into transaction log - Runtime for Linux 64 - curl 7.21.2.1 (x86_64-suse-linux-gnu) libcurl/7.21.2.1 OpenSSL/1.0.0e zlib/1.2.5 libssh2/1.3.0 Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp Features: IPv6 Largefile NTLM SSL libz - OpenLDAP 2.4.23 - ICU 4.4.2 - sqlite 3.6.16 - Xerces-c 2.8.0 - gtest 1.5.0 - SQLAPI 3.7.32 BUGFIXES ======== - Solaris (x86 and Sparc), AIX: getServiceContextValue("tcpip","LocalHostName") memory leak - small one time memory leak in M_SystemInfo - one time memory leak in ResourceManager - Linux-64: fix SAP package (include ICU version 26 for SAP add-on) - PS: race condition between completion and error signal - Linefeeds in XML attributes are wrong encoded - Console does not show PS objects - SAPXMLIDocComposer created invalid XML ==================== E2E RUNTIME - 5.1.58 ==================== BUGFIXES ======== - greater and lower than are not translated correctly - XML Parser: xsi:type="X": X is not correctly resolved if a default namespace is defined ==================== E2E RUNTIME - 5.1.57 ==================== FEATURES ======== - Improve error message if XML elements are not found: print the parent, explain possible causes BUGFIXES ======== - service with scheduler is crashing (introduced 4.1.52002) - SOAP response has undeclared namespace prefix (introduced 4.1.45) ==================== E2E RUNTIME - 5.1.56 ==================== BUGFIXES ======== - File System Adapter: readDirectory: throw exception if directory name is "" ==================== E2E RUNTIME - 5.1.55 ==================== BUGFIXES ======== - Windows: File System Adapter: readDirectory doesn't throw exceptions (introduced 4.1.47) ==================== E2E RUNTIME - 5.1.54 ==================== BUGFIXES ======== - URL adapter ignores curl option CURLOPT_FTP_FILEMETHOD - curl --version report correct libssh2 version - AIX, Solaris-Sparc, Solaris-x86: sftp did not work (introduced 4.1.51) - crashed on Solaris-x86 with an old PS-event without event name ==================== E2E RUNTIME - 5.1.53 ==================== FEATURES ======== - SOAP Adapter: Switch off sending transaction ID BUGFIXES ======== - UI: Validation: the flag onlyIfValid does not work for IE 7 and IE 8 - Persistent State: Server crashes because meta class is not available - Error: UserName is empty when using URL Adapter with proxy authentication - Memory problems in runtime cause service error / crash - Interactive Debugger, Service stays idle after detach - throw exception if ConvertHexToBlob() fails - Persistent State: error handling if update of blob fails At the end of a transition after exit action, transition action and entry action are successfully executed, the state engine has to update the state database. This update is a database transaction with several SQL updates. If one SQL update or the commit fails then the default error handler will be executed with exception: "Next state could not be reached because of persistent state database problems. All actions succeeded. State object will stay in old state. Event is deleted so the transition will not be executed again." In case the deletion of the events did not work you will get: "Next state could not be reached because of persistent state database problems. All actions succeeded. State object will stay in old state. Deletion of event failed so the transition will be executed again." ==================== E2E RUNTIME - 5.1.52 ==================== BUGFIXES ======== - 404 Error when trying to open UI ==================== E2E RUNTIME - 5.1.51 ==================== FEATURES ======== - UI: Defining date formats - JSON: jsonToClass(), classToJSON() BUGFIXES ======== - cyclic data crash - UI: Internal: loading datepicker translations and setting defaults does not work - sftp fails sometimes CHANGES ======= - libssh2 1.3.0 ==================== E2E RUNTIME - 5.1.50 ==================== FEATURES ======== - SAPRFC: Support STRING and XSTRING - Map BUGFIXES ======== - SAPIDocParser mixes up IDOCs ==================== E2E RUNTIME - 5.1.49 ==================== BUGFIXES ======== - persistent state: create same object with different owner fails If you have two services with different owner but same persistent state class the you got an error if at the same moment two objects with the same primary key are created. You got this error: [][Error][Internal][BESM][12][SQLAPI dbms api error while calling "Execute" on "INSERT INTO OBJECT_KEYS (OBJECT_ID, KEY_HASH, KEY_BLOB, OWNER) VALUES (:1,:2,:3,:4)": 1 ORA-00001: unique constraint (HR.SYS_C0018876) violated] And despite the error both PS objects are still created! - getObjectCopy returns cached values - server crash running two services sharing persistent state DB with same owner - Access violation: Got a table of simple values instead of records ==================== E2E RUNTIME - 5.1.48 since version 5.1.40 ==================== FEATURES ======== - Functions: convertHexToBlob(), convertBlobToHex() - Bulk Fetch from database (e.g. cursor support) - trace CURL SSL info as hex dump - Support environment variable in database name for SQL adapter - Startup/Shutdown Callback Activity - Record/Replay - return adapter input - errors return adapter id - sequences of different adapters is irrelevant - Disable SOAP services - Record/Replay: report error if component is unknown - set trace input/output tags from repository entries - Record/Replay - UI: support mocking up service - cast value - Zip Adapter BUGFIXES ======== - After certain amount of requests no SSL connection reuse anymore - Miss-leading error message caused by console pings: "Connection breakdown while reading request line: NET_Socket::readLine() recv() failed." - Reduce: if-single statement does not get the original input message - Runtime crash processing PS objects - Put file via SFTP curl error - sftp connect error when using SSH-2.0-JSCAPE - PState error when terminate object on Oracle database - SOAP composer: XML namespaces declaration missing - XML composer: fixed parsing of namespace definition - XML composer: If namespace prefixes collide, then the generated XML is corrupt. - Scheduler does not fire - Concurrent Service with external PState crashes - index accessor out of range, wrong element count - Windows: trace CURL SSL info as hex dump (line number) - PS: the same runtime instance has been started twice - Deleting trace files on UNIX - PState error trace not written - persistent state: log uncatched exceptions only once - Remove e2edeadlock.dmp file - string.transcodeToBlob("UTF-8") should return the string bytes - Unix: SAP RFC composer for deep structure failed - Unix: can not load AddOns/Functions/FUM/typeOf.tab: runtime does not start - flat file parser exception FFADSM/29: line and offset numbers were wrong - string.transcodeToBlob("UTF-8") should return the string bytes - FlatFileAdapter: quote character is escaped - Avoid monitoring notifications for connection breakdowns. - SMTP Adapter mixes recipients up - PrintDateTimeExpression with timezone Zurich returns UTC - startup failed with SQL getHandle/fetch adapters on Unix - SOAP composer: XML namespaces declaration missing - AIX: fix packaging of liblber and libldap - Service crashes writing transaction log - Catch after expansion region does not work - Interactive Debugger: memory leak if stepping over adapter - sending email with SMTP adapter crashed - crash interactive debugger if stepping over adapter - small one time memory leak: SOAP_ServiceRequestRepositoryReader - Setting TransactionID to id of PS object causes PS DB Error - Trace: Impossible to distinguish iteration variables from standard io - Service crashes composing flat file - Crash with Hit ODBC Server/400 - getMetaAttributes works only if last attribute is filled - Java adapter callback blocks - typo in log message: Loaded addon successfully. - persistent state service blocks shutdown - persistent state deadlock - UI: Corrected FF bug: errorPlacement has an offset (x=5, y=-10) - UI: error placement is wrong - Parser error if called soap service does not return any responses - re-added call stack to error description (removed 5.1.43006) - SOAP interface/adapter needs very long to provide XML-feed - SOAP: Polymorphic root elements are not recognized - Polymorphic XML types do not work if the namespace contains prefixes - alignment of SAP attributes can be set explicitly - SAP: Runtime crashes when calling testcase Z_TEST_... - Solaris and HP-UX: Failure establishing ssh session - sftp: AIX: authentication error - UI: XML response parse errors are not reported - Runtime does not start on Linux 64bit - Special characters in filename not handled correctly - file system adapter: Create directory d:\1\2 failed if parent directory d:\1 does not exists. But creating directory d:/1/2 did work. - Startup/Shutdown Callback Activity did not work because it was not packaged. CHANGES ======= - Removed the dump file name and the call stack from a caught exception description - Unix: remove message 'Ignored signal received' from stderr - Linux x86_64 support - UI: Made background transparent. - UI: Add e2e libraries to js lib directory in order to cache them at runtime. - SOAP response: do not return an empty Header element - UI: Increased contrast of disabled input fields. - UI: Added libraries for unit testing. - UI: performance issue: put all libraries in one file to avoid too many browser requests - minizip version 1.1 ========================== E2E RUNTIME - 5.1.40 since version 5.0 / 5.1.37 ========================== FEATURES ======== - Rework SAP service error logging. Change all "Fatal" log entries (except repository errors) to "Error" entries. 1. If the E2E Runtime establish a connection to SAP at startup you get: [Info][Internal][SAPADLM][34][Connection to SAP is established.] 2. If the connection to SAP gets lost you get: [Error][Internal][SAPADLM][11][An error occurred while waiting for an SAP request. Runtime tries to reconnect but fails: [Error][Internal][SAPADLM][10][Connection to SAP could not be established. Will retry to connect in 60 seconds and will report successful connect with info message SAPADLM/34. Retry was successful: [Info][Internal][SAPADLM][34][Connection to SAP is established.] - Upload of htdoc libraries (js, css, images) - libcurl 7.21.2.1: HP-UX, AIX, Linux, Solaris-Sparc, Solaris-x86 - OpenLDAP 2.1.17.1 Windows - libcurl 7.21.2 Windows with OpenLDAP 2.1.17 (before we used Windows LDAP), OpenLDAP 2.4.23 Unix platforms - libssh2 1.2.7 - openssl 1.0.0a - URL adapter: support LDAPS protocol - Performance: curl: only one easy handler for each session - SFTP: Connection pooling, otherwise too slow - All SOAP and URL adapter requests for one session open only one connection to each backend server if all relevant parameters (like protocol, host, user, password etc.) are equal. - Performance issue SafeConnect - enhance transaction log file with open and close of SAP RFC connections - SAP RFC 6.40.52 - Dump Error Context - SQLAdapter: SQL Debugging - SQLAPI 3.7.32 - FlatFile Parser: automatic calculation of offset - FTP Streaming - Added XML header to control port error message - Change "Dump Trace On Error" when Runtime is running - Added HTTP OPTIONS command to SOAP adapter: send more response headers - Added HTTP OPTIONS command to SOAP adapter - New functions: setTransactionID(id:String), getTransactionID():String - New remote controller command: DumpProcessInfo. Leads to dump file in the current dir - Support sqlite with SQL adapter - Dump on Error by default disabled - Support sqlite with SQL adapter - URL adapter: decrease memory consumption for put and get operations - Tune serving of static content through SOAP service - Add version info to all dll's - Introducing a TrxID (finished) 1. aus dem SOAP Header gelesen wird oder 2. explizit gesetzt wird im Preprocessor auf das Objekt InterceptorMessage.transactionID 3. aus dem Persistent State Kontext gelesen wird 4. The SOAP adapter should set the transaction ID in the SOAP header - Making TrxLog entries consistent Remove repository version from startup lines of bridgeserver.log - fixed compiler warning on AIX and HPUX - Added authorization options (e.g. user authorization with public key) to URL adapter (sftp protocol): CURLOPT_SSH_PUBLIC_KEYFILE CURLOPT_SSH_PRIVATE_KEYFILE CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 CURLOPT_SSH_AUTH_TYPES CURLOPT_KEYPASSWD - Support guarded action script statements - Windows: OpenSSL 0.9.8k - Windows: ICU 3.6 - Windows: Visual Studio 2003, C++ Compiler 7.1 - SQLite 3.6.16 - added error code to SQLite database error logging - Added truncated trace to filter, apply and reduce functions (Shows successful response only after 20 minutes). - Runtime must check minor version of license - Runtime check of minor version of license is disabled - Runtime must check minor version of license - Added Java adapter and SQL adapter to base package. Removed Java and SQL package. - Support timezone at parseDateTimeExpression: %z - Print local date time expression - Persistent State: show rollback of persistent state creationRuntime Tracing2001 - Streamline trace support - Statement Number in Mapping Error Message1 - Added append and close operations to Filesystem adapter (implemented close) BUGFIXES ======== - SAP AddOn: Crashing when SAP system is shutting down - Wrong update of persistent states timestamps (introduced 4.1.23) - Fix "time zone" typo - fatal error in Java runtime environment - Fix crash file system adapter: readLine - If more then one session is using the file system adapter on the same file then I had a crash. It could possibly crash too when it is not the same file. - Creation of UNC directory does not work - Persistent State: State names must be globally unique not only for one state machine. - List of persistent state objects is incomplete - Memory leak when having cyclic references - Service BugtrackingBackup does not start - Polymorphic type is wrong - flat file parser race condition - Persistent State: do not crash if saved blob is invalid - Crash when using interface within statemachine - Performance: curl trace info is always generated - LDAP response (introduced 5.0.33) - Thread Adapter crash (introduced 5.0.29004) - Missing File in Linux Release (introduced 5.0.33) - Flat file composer ignores "null" attributes - LDAPS service crash - libssh2 1.2.7.2: fix memory leak for each sftp session - libssh2 1.2.7.1: fix memory leak for each sftp session - FTP URL-Adapter hangs - Fix crash when cyclic data items are stored in the Memory Adapter. - Fix crash on Solaris if using FlatFile adapter - Fix regression of bug 6045: Runtime crashed - Server-Loops when association is navigable in both way. Removed memory leak if we have cyclic dependency between objects. - You can not see any asynchronous trace in the Asynchronous Trace Analyzer. - Datetime does not work on SQLite - Asynchronous Trace Analyzer shows non existing traces - SQL Adapter does not show SQL message for SQLite - Iteration does not create empty array - Crash if persistent state service did not start up - Conversation example crashes on runtime - SOAP serialization should use external name - remove warning MLM 4: Can't access repository file - SOAP: Document/Literal: parsing requests fail - Persistent State sending signal with simple type - Persistent State: Delete all objects fails - SELECT does not stop processing after an exception occurs - repair of pstate.db after service-crash works not properly - SQL select on Unix and Oracle DB: ORA-01406: fetched column value was truncated - SQLAPI 3.7.28 patch 21.07.2009 - HP-UX runtime does not start: /usr/lib/hpux64/dld.so: Unable to find library 'libsqlite3.so'. - Solaris runtime does not start: can not load libsqlite3.so - Fixed typo in error message FSADSM/29 - Warnings at service startup - Months spelled wrong (date time format) - CLOB cut off after 32767 chars with clientLib10 - Fix crash: services without SOAP frontend, If a service has no SOAP frontend and e.g. only a timer frontend (standard timer example) it crashs during startup. - History-State is always the 1st error - Only open transaction log once a day - Memory leak when TA gets big or is written in high frequent - Fixed a memory leak if a string is generated from a DateTime object. - Added error if persistent state submachine named entry point has no completion transition. - SQL Adapter: fixed potential memory leaks if SQLAPI throws an exception - CLOB cut off after 32767 chars with clientLib10 - Stored procedures did not return the complete CLOB too. - InterceptorAttribs getting lost in PostProcessing - Stored procedure with CLOB as output parameter - PState lost SAPTables at creation - SQL Server nvarchar(max) - Install MSVCP71.dll on Windows-Server - Runtime crash SQL adapter - WaitForThread does not work on Unix - Thread example can`t be stopped on aix - Warnings at service startup - Warning when receiving IDOC via tRFCServer - milliseconds in parseDateTimeExpression() - The statement number in an error call stack was sometimes incorrect - Read in asynchronous Analyzer: Error Msg - Fix race condition BE_ResourceManager::reload - Fix small memory leak if persistent state DynamicTimoutAfter transition - crash flatfile composer with invalid padding rule - signal event must wait while a do-activity is running - Fix transaction log messages for "PSTATE" - crash sending email - CLOB support via ODBC - SOAPHeader Namespace not set - Missing transaction ids in transaction log - DateTimeStructure Error - ODBC Decimal Error - Fix crash if no Core/mapping.tab exists - Fix serving static HTTP content with searchpath - SOAP BackendCall - namespace declaration missing - Timeticks conversions differ with 1 hour - fix startup crash if Java VM option is empty - Timeticks conversions differ with 1 hour - Lost attributes when reading persistent state - Server crashes after start-up - Got error msg on async Analyzer - XMLComposer: Doc/Literal: if the output is one simple typed element, the namespace is lost - Runtime can`t parse date of Email - Fix converting string to datetime using field %z (timezone) - PState-concatenated PrimaryKey does not work - Crash selecting CLOB on Unix - Cannot trace intercepted services - PStateError: unable to open database file - Got Error on INSERT INTO HISTORY_STATES - Removed internal memory reserve - Log "out of memory" in all cases to bridgeserver.log and to monitoring service - Server crash on parsing MT940 Swift message - got Hieroglyphs from DB2 LONGVARCHAR attribute - Persistent state: automatic update of schema change of :memory: database failed - Can not start service due duplicate id: improved error message in order to help finding the cause in the UML model - Timezone in Transaction Log - Shorten timezone info in BridgeLog - Removed warning BELM/35 'No "Core/security.tab" found.' - Fixed memory leak in persistent state "dynamic timout at" - sftp put does not work for files bigger 10kb. Upgrade libssh2 to version 1.1. - Fixed memory leak in Any::getMetaAttributes() - Service using Java in Preprocessor crashes under load - SOAP service: log data item leak - Debug build only: assert all data items are deleted - Creating persistent state object hangs - Fixed Windows compiler warnings - 4.1.7 does not start on some Windows computers. Removed the MFC dependency. - Fixed %s for printDateTimeExpression() - Service using Java in Preprocessor crashes under load - URL adapter fails silent if an option is unkown. Now an error is logged. - RFCServerExample can not stop - TraceRT service crashed during startup in method NET_SocketSupport::translateToIPNumber - Fixed compile issue if JAVAAD_DEBUG is defined - printLocalDateTimeExpression returns wrong time on Windows - FTP can not change into directory from HP-Unix (curl 7.19.4 with patched connect.c and sendf.c) - FTP does not work on HP-Unix (curl 7.19.4 with patched connect.c) - Linux: Service Startup crash - Crash if calling static operation from persistent state - Apply: Access violation if the iterated element does not return expected value - Edifact parsing with Alias - Qualfied XML attributes are not parsed correctly - parsing DateTime fails Parsing numbers skips some digits - parsing DateTime fails - Persistent State: hanging state after DB reconnect - Persistent State: automatic database reconnect logs to many entries - xmlToClass() into object of type ANY fails - CURL CURLOPT_USE_SSL=CURLUSESSL_CONTROL missing - Create Thread: Async trace does not work - AIX runtime does not start - XML Schema dateTime wrong value - URL Connector Subsystem Error - FTPS via CURL not working - curl 7.19.2 - SOAP RPC Composer: Polymorphy of simple types does not work - Postprocessor memory leak - Persistent State: Oracle ORA-91003 - Persistent State: getError does not work in default Error Handler - Persistent State: Failed to connect sql database for state engine - SOAPAdapter: URL connection options are ignored - Persistent State: defaultErrorHandler is not called if doActivities fail - Persistent State: parentState-element missing in fork - state transitions1 - Persistent State: Polymorph attributes of PS classes are not serialized correctly1 - Persistent State: duplicated states after explicit commit1 - Persistent State: State Machine does never leave first state