int-inc-oracle - Build # 3087 - Unstable:

Check console output at https://ci.openbravo.com/job/int-inc-oracle/3087/ to 
view the results.


Committers since last success:

Changes for Build #3087

    Carlos Aristu <[email protected]> null
    fixes issue 34816: Support a second database for reporting
      
    Carlos Aristu <[email protected]> null
    [multi-pool] Database sessions must be related to a pool with a not null 
name
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] removed obsolete comment
        src/org/openbravo/dal/service/OBCriteria.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Removed unused variable
        src/org/openbravo/dal/core/DalThreadHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Ensure that session handler and OBContext are always cleaned up
        src/org/openbravo/dal/core/DalThreadHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Merge with pi
      
    Carlos Aristu <[email protected]> null
    [multi-pool] Extracted clean up logic into two new private methods
        src/org/openbravo/dal/core/DalThreadHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Improved javadoc description
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Ensure that all sessions are cleaned up by the SessionHandler
        src/org/openbravo/dal/core/DalThreadHandler.java
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use constant for currency ID
        src-test/src/org/openbravo/test/security/CrossOrganizationReference.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated missing constant usage
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_01.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_02.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_03.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_04.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_05.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_06.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_07.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_08.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_09.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_10.java
        src-test/src/org/openbravo/advpaymentmngt/test/PaymentTest_11.java
        src-test/src/org/openbravo/test/costing/TestCosting.java
        src-test/src/org/openbravo/test/security/EntityAccessTest.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/ConnectionInitializerInterceptor.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year
        src-test/src/org/openbravo/test/security/CrossOrganizationReference.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use constants for Strings
        src-test/src/org/openbravo/test/base/OBBaseTest.java
        src-test/src/org/openbravo/test/dal/DalPerformanceCriteriaTest.java
        src-test/src/org/openbravo/test/dal/DalQueryTest.java
        src-test/src/org/openbravo/test/dal/DalTest.java
        src-test/src/org/openbravo/test/dal/ValidationTest.java
        src-test/src/org/openbravo/test/security/CrossOrganizationReference.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added new test cases
        src-test/src/org/openbravo/test/base/OBBaseTest.java
        src-test/src/org/openbravo/test/dal/DalTest.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Camel cased method name
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Register available pools instead of unavailable ones

Register available pools instead of unavailable ones, otherwise 
isSessionHandlerPresent was returning true when using it with a non-initialized 
pool name
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Fix typo
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Set the interceptors for every available datasource
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year
        src/org/openbravo/dal/core/DalThreadHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] SessionHandler must take into account the availability of the 
pools

As the SessionHandler is not removed anymore after doing commit or rollback, it 
remains present along all the lifecycle of the thread (it is removed at the 
end). But the session of a particular pool is indeed closed after doing commit 
or rollback, therefore the isSessionHandlerPresent() needed to be updated to 
take into account for which pools in particular is the session handler 
available.

>From now the SessionHandler maintains a set with the names of the pools where 
>a commit or a rollback has been done. This set is consulted to decide if the 
>session handler is present for a particular pool as 'sessionHandler.get() != 
>null' is not enough to decide it, because of the reason explained above.

Without this changeset, two consecutive calls to 
OBDal.getInstance().commitAndClose() would fail because the second commit would 
be performed without an active session and the checkInvariant method of the 
SessionHandler would throw an exception.
        src/org/openbravo/dal/core/DalThreadHandler.java
        src/org/openbravo/dal/core/SessionHandler.java
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Declare otherPoolInstances as ConcurrentHashMap

Declare otherPoolInstances as ConcurrentHashMap in order to prevent compilation 
errors because of the usage of the putIfAbsent method: this method is not 
present in the Map interface in Java 7.
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use read only pool by default in utility methods used by 
reports
        src/org/openbravo/erpCommon/utility/Utility.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use read only pool by default with ReportManager
        src/org/openbravo/erpCommon/utility/reporting/ReportManager.java
        
src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use read only pool by default to retrieve report info
        src/org/openbravo/erpCommon/utility/reporting/Report.java
        
src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Prevent connection leak after printing with PrintController

- Not all the session were being clean-up by the DalThreadHandler, if the 
OBDal.getInstance().commitAndClose() method was invoked along the lifecycle of 
a thread. This was happening in the printing flow that makes use of the 
PrintController class.
- Besides, now the session is not initialized in the 
SessionHandler.getInstance() method, now this is performed just in the 
getSession() method which is invoked by all the public methods of the 
SessionHandler when required.
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use putIfAbsent to avoid possible thread unsafeties

The putIfAbsent method of ConcurrentHashMap associates a key with the given 
value if the key is not already present in the map. This method is performed 
atomically, this way we ensure that two threads executing the 
getInstance(String pool) method at the same time always return the same 
instance for the same pool name.
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated javadoc info
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Avoid duplicated call to retrive the hibernate session 
statistics
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Flush the session of the pool assigned to the OBDal instance
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use OBDal read-only instance when needed in the reporting 
engine
        
modules/org.openbravo.client.application/src/org/openbravo/client/application/report/ReportingUtils.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Removed useless static variable
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Merge with pi
      
    Carlos Aristu <[email protected]> null
    [multi-pool] Do not use getSession() in checkInvariant()

Retrieve the session directly from the map. If we were using getSession(pool), 
the null check would be useless because that method never return null as it 
creates the session if it does not exists
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year and added missing javadoc
        src-core/src/org/openbravo/database/ExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added missing javadoc information
        src/org/openbravo/dal/service/OBQuery.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added missing javadoc information
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Updated copyright year
        src/org/openbravo/dal/core/DalThreadHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added missing javadoc information
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added missing javadocs
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Fix wrong pool selection in createQuery method
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Moved datasource existence check to getDataSourceByName method
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Delete session handler if it was not deleted before

At this point session handler will not be present normally, we delete it just 
in case it is still present
        src/org/openbravo/dal/core/DalThreadHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Do not include default pool in otherPoolInstances map
        src/org/openbravo/dal/service/OBDal.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Delete session handler if it was not deleted before
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Created new methods to organize maps handling

- New methods added to handle session, connection and transaction maps.
- Change position of some methods to have them better organized.
        src/org/openbravo/dal/core/SessionHandler.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Use default pool if requested pool is not configured
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Close all available DataSource instances
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Default DataSource is cached
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Return default property if pool name is not provided
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added missing trim() for int property parsing
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added missing javadoc for getConnection(String) method
        src-core/src/org/openbravo/database/ExternalConnectionPool.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added constant for the attribute that marks connections as not 
new
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/ConnectionInitializerInterceptor.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Added isReadOnlyPool private method
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/ConnectionInitializerInterceptor.java

    Carlos Aristu <[email protected]> null
    [multi-pool] Merge with pi
      
    Asier Lostalé <[email protected]> null
    [multi-pool] close transaction in case commit fails
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] fixed incorrect condition
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] some code clean up
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] rename variables that have collections
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] better handling of thread clean up
        src/org/openbravo/dal/core/DalThreadHandler.java
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] simplified API for readonly Connection Providers
        
modules/org.openbravo.client.application/src/org/openbravo/client/application/report/ReportingUtils.java
        src/org/openbravo/base/secureApp/HttpSecureAppServlet.java
        
src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java
        src/org/openbravo/service/db/DalConnectionProvider.java

    Asier Lostalé <[email protected]> null
    [multi-pool] add import + reorder them
        
modules/org.openbravo.client.application/src/org/openbravo/client/application/report/ReportingUtils.java

    Asier Lostalé <[email protected]> null
    [multi-pool] pi merge
      
    Asier Lostalé <[email protected]> null
    [multi-pool] jasper reports with query in jrxml use readonly pool
        
modules/org.openbravo.client.application/src/org/openbravo/client/application/report/ReportingUtils.java
        src/org/openbravo/base/secureApp/HttpSecureAppServlet.java

    Asier Lostalé <[email protected]> null
    [multi-pool] set pool when creting dal query
        src/org/openbravo/dal/service/OBDal.java

    Asier Lostalé <[email protected]> null
    [multi-pool] prevent audit infra initialization for readonly pool
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/ConnectionInitializerInterceptor.java

    Asier Lostalé <[email protected]> null
    [multi-pool] DAL queries and criterias can use readonly pool
        src/org/openbravo/dal/service/OBCriteria.java
        src/org/openbravo/dal/service/OBDal.java
        src/org/openbravo/dal/service/OBQuery.java

    Asier Lostalé <[email protected]> null
    [multi-pool] fixed regexp to get pool properties
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Asier Lostalé <[email protected]> null
    [multi-pool] moved pool name to constant
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java
        src-core/src/org/openbravo/database/ExternalConnectionPool.java
        src/org/openbravo/dal/service/OBDal.java

    Asier Lostalé <[email protected]> null
    [multi-pool] don't set audit trail info for readonly
        src-core/src/org/openbravo/database/SessionInfo.java

    Asier Lostalé <[email protected]> null
    [multi-pool] readonly pool will get connections in read only mode
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Asier Lostalé <[email protected]> null
    [multi-pool] read only pool read from Openbravo.properties
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java

    Asier Lostalé <[email protected]> null
    [multi-pool] reduced new methods visibility where possible
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] moved default pool name to constant
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java
        src-core/src/org/openbravo/database/ExternalConnectionPool.java
        src/org/openbravo/dal/core/SessionHandler.java
        src/org/openbravo/dal/service/OBDal.java
        src/org/openbravo/service/db/DalConnectionProvider.java

    Asier Lostalé <[email protected]> null
    [multi-pool] do not leak other pools' connections
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] set default pool for DalConnectionProvider
        src/org/openbravo/service/db/DalConnectionProvider.java

    Asier Lostalé <[email protected]> null
    [multi-pool] DalConnectionProvider uses Dal's pools
        src/org/openbravo/dal/core/SessionHandler.java
        src/org/openbravo/service/db/DalConnectionProvider.java

    Asier Lostalé <[email protected]> null
    [multi-pool] allow multiple dal instances
        src/org/openbravo/dal/core/DalThreadHandler.java
        src/org/openbravo/dal/core/SessionHandler.java
        src/org/openbravo/dal/service/OBDal.java

    Asier Lostalé <[email protected]> null
    [multi-pool] PrintController uses RO pool
        
src/org/openbravo/erpCommon/utility/reporting/printing/PrintController.java

    Asier Lostalé <[email protected]> null
    [multi-pool] don't leak connections obtained for different pools
        src/org/openbravo/dal/core/SessionHandler.java

    Asier Lostalé <[email protected]> null
    [multi-pool] DalConnectionProvider can retrieve conn from a named pool
        src/org/openbravo/service/db/DalConnectionProvider.java

    Asier Lostalé <[email protected]> null
    [multi-pool] base for connection pool can return a connection from a 
different one
        src-core/src/org/openbravo/database/ExternalConnectionPool.java

    Asier Lostalé <[email protected]> null
    [multi-pool] basic multipool infrastructure
        
modules/org.openbravo.apachejdbcconnectionpool/src/org/openbravo/apachejdbcconnectionpool/JdbcExternalConnectionPool.java




Last 20 lines of the console output:

[...truncated 1069 lines...]
  [javadoc] Loading source files for package 
org.openbravo.userinterface.smartclient...
  [javadoc] Constructing Javadoc information...
  [javadoc] Standard Doclet version 1.7.0_111
  [javadoc] Building tree for all the packages and classes...
  [javadoc] 
/srv/ci/workspace/int-inc-oracle/src/org/openbravo/dal/core/SessionHandler.java:301:
 warning - @param argument "connection" is not a parameter name.
  [javadoc] Building index for all the packages and classes...
  [javadoc] Building index for all classes...
  [javadoc] Generating 
/srv/ci/workspace/int-inc-oracle/docs/api/help-doc.html...
  [javadoc] 1 warning

BUILD SUCCESSFUL
Total time: 48 seconds

Checking console output
/srv/ci/jobs/int-inc-oracle/builds/3087/log:
  [javadoc] 
/srv/ci/workspace/int-inc-oracle/src/org/openbravo/dal/core/SessionHandler.java:301:
 warning - @param argument "connection" is not a parameter name.
Build step 'Jenkins Text Finder' changed build result to UNSTABLE
Email was triggered for: Unstable (Test Failures)
Sending email for trigger: Unstable (Test Failures)
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Openbravo-builds mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-builds

Reply via email to