Details

      Description

      These changes need to be made in a few different places:

      WEB-INF/RWStore.properties::

      com.bigdata.journal.Journal.groupCommit=true
      

      WEB-INF/GraphStore.properties::

      com.bigdata.journal.Journal.groupCommit=true
      

      src/resources/HAJournal/HAJournal.config::

            new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","true")),
      

      config.sh::

      #Group commit (true|false)
      
      if [ -z "${GROUP_COMMIT}" ] ; then
      	export GROUP_COMMIT=false
      fi
      

      TestNanoSparqlServerWithProxyIndexManager:

            // Enable GROUP_COMMIT. See #566.
            properties.setProperty(com.bigdata.journal.Journal.Options.GROUP_COMMIT,
                  "true");
      

      bigdata-jini/src/main/java/HAJournal-[ABC].config

            new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
      

      bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-[ABCDE].config

            new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
      

      bigdata-jini/src/test/com/bigdata/journal/ha/TestAll: disable the HA Group Commit test suite.

      //        suite.addTestSuite(TestHA1GroupCommit.class);
      //        suite.addTestSuite(TestHA3GroupCommit.class);
      

      TODO: Update the wiki page to indicate that this feature is no longer beta and re-verify the API examples.

      Workaround: group commit can be enabled before the 1.5.2 release by overriding the appropriate parameter.

      See http://wiki.bigdata.com/wiki/index.php?title=GroupCommit
      See BLZG-670 (Group commit and unisolated writers)

        Issue Links

          Activity

          Hide
          bryanthompson bryanthompson added a comment -

          Enabled group commit in the few places where it was not already enabled.

          Commit 86efbde375d64a83c7b84b97ab843abfbfb8e29f to github master.

          Show
          bryanthompson bryanthompson added a comment - Enabled group commit in the few places where it was not already enabled. Commit 86efbde375d64a83c7b84b97ab843abfbfb8e29f to github master.
          Hide
          bryanthompson bryanthompson added a comment - - edited

          Disabling group commit in master. Per BLZG-1236, we will resolve some RWStore related issues before enabling group commit in a release. This reflect caution more than any known problem that is specific to group commit.

          Commit 4d4cbe1f50aff6fe76960c3f07a34261dd9d924b to github master.

          Show
          bryanthompson bryanthompson added a comment - - edited Disabling group commit in master. Per BLZG-1236 , we will resolve some RWStore related issues before enabling group commit in a release. This reflect caution more than any known problem that is specific to group commit. Commit 4d4cbe1f50aff6fe76960c3f07a34261dd9d924b to github master.
          Hide
          bryanthompson bryanthompson added a comment -
          • Modified the test suite HA config files to not use group commit.
          • Modified the helper HA config files to not use group commit.
          • Modified the HA test suite to not run the group commit tests.
          • Updated the ticket to identify these changes so we can unwind them to enable group commit.

          Commit to github master: 40dd8bb116ec5fb03dc13ded1d59b9468fdf37b5

          Show
          bryanthompson bryanthompson added a comment - Modified the test suite HA config files to not use group commit. Modified the helper HA config files to not use group commit. Modified the HA test suite to not run the group commit tests. Updated the ticket to identify these changes so we can unwind them to enable group commit. Commit to github master: 40dd8bb116ec5fb03dc13ded1d59b9468fdf37b5
          Hide
          beebs Brad Bebee added a comment -

          The only place it is enabled is in the unit test.

          grep -ER "groupCommit|GROUP_COMMIT" */* | grep -E "true|false"
          
          bigdata-core/bigdata/src/java/com/bigdata/journal/Journal.java:      String DEFAULT_GROUP_COMMIT = "false";
          bigdata-core/bigdata/src/java/com/bigdata/journal/WriteExecutorService.java:    final private AtomicBoolean groupCommit = new AtomicBoolean(false);
          bigdata-core/bigdata/src/java/com/bigdata/journal/WriteExecutorService.java:        if (!groupCommit.compareAndSet(false, true)) {
          bigdata-core/bigdata/src/java/com/bigdata/journal/WriteExecutorService.java:            groupCommit.set(false);
          bigdata-debian/target/classes/bigdata-war/src/main/resources/RWStore.properties:com.bigdata.journal.Journal.groupCommit=true
          bigdata-debian/target/classes/bigdata-war/src/main/webapp/WEB-INF/GraphStore.properties:com.bigdata.journal.Journal.groupCommit=true
          bigdata-debian/target/classes/bigdata-war/src/main/webapp/WEB-INF/RWStore.properties:com.bigdata.journal.Journal.groupCommit=true
          bigdata-debian/target/classes/RWStore.properties:com.bigdata.journal.Journal.groupCommit=true
          bigdata-jini/src/main/java/com/bigdata/journal/jini/ha/HAJournal-A.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/src/main/java/com/bigdata/journal/jini/ha/HAJournal-B.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/src/main/java/com/bigdata/journal/jini/ha/HAJournal-C.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-A.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-B.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-C.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-D.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-E.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-A.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-B.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-C.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-D.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-E.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bigdata-sails-test/src/test/java/com/bigdata/rdf/sail/TestConcurrentKBCreate.java:          properties.setProperty(Journal.Options.GROUP_COMMIT,"true");
          bigdata-sails-test/src/test/java/com/bigdata/rdf/sail/TestConcurrentKBCreate.java:          properties.setProperty(Journal.Options.GROUP_COMMIT,"false");
          bigdata-war-html/src/main/resources/RWStore.properties:#com.bigdata.journal.Journal.groupCommit=true
          bigdata-war-html/src/main/webapp/WEB-INF/GraphStore.properties:#com.bigdata.journal.Journal.groupCommit=false
          bigdata-war-html/src/main/webapp/WEB-INF/RWStore.properties:com.bigdata.journal.Journal.groupCommit=false
          bin/ant-build/classes/bigdata-war/src/WEB-INF/GraphStore.properties:#com.bigdata.journal.Journal.groupCommit=true
          bin/ant-build/classes/bigdata-war/src/WEB-INF/RWStore.properties:#com.bigdata.journal.Journal.groupCommit=true
          bin/ant-build/classes/com/bigdata/journal/jini/ha/HAJournal-A.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bin/ant-build/classes/com/bigdata/journal/jini/ha/HAJournal-B.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bin/ant-build/classes/com/bigdata/journal/jini/ha/HAJournal-C.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          bin/history.txt:    Added GROUP_COMMIT (default false)
          bin/history.txt:    Explicitly added GROUP_COMMIT property into HA CI config files (defaults to false)
          bin/src/resources/bin/config.sh:        export GROUP_COMMIT=false
          bin/src/resources/HAJournal/HAJournal.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          src/resources/bin/config.sh:    export GROUP_COMMIT=false
          src/resources/HAJournal/HAJournal.config:      new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT,System.getProperty("groupCommit","false")),
          
          Show
          beebs Brad Bebee added a comment - The only place it is enabled is in the unit test. grep -ER "groupCommit|GROUP_COMMIT" */* | grep -E " true | false " bigdata-core/bigdata/src/java/com/bigdata/journal/Journal.java: String DEFAULT_GROUP_COMMIT = " false " ; bigdata-core/bigdata/src/java/com/bigdata/journal/WriteExecutorService.java: final private AtomicBoolean groupCommit = new AtomicBoolean( false ); bigdata-core/bigdata/src/java/com/bigdata/journal/WriteExecutorService.java: if (!groupCommit.compareAndSet( false , true )) { bigdata-core/bigdata/src/java/com/bigdata/journal/WriteExecutorService.java: groupCommit.set( false ); bigdata-debian/target/classes/bigdata-war/src/main/resources/RWStore.properties:com.bigdata.journal.Journal.groupCommit= true bigdata-debian/target/classes/bigdata-war/src/main/webapp/WEB-INF/GraphStore.properties:com.bigdata.journal.Journal.groupCommit= true bigdata-debian/target/classes/bigdata-war/src/main/webapp/WEB-INF/RWStore.properties:com.bigdata.journal.Journal.groupCommit= true bigdata-debian/target/classes/RWStore.properties:com.bigdata.journal.Journal.groupCommit= true bigdata-jini/src/main/java/com/bigdata/journal/jini/ha/HAJournal-A.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/src/main/java/com/bigdata/journal/jini/ha/HAJournal-B.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/src/main/java/com/bigdata/journal/jini/ha/HAJournal-C.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-A.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-B.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-C.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-D.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/src/test/resources/com/bigdata/journal/jini/ha/HAJournal-E.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-A.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-B.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-C.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-D.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-jini/target/test-classes/com/bigdata/journal/jini/ha/HAJournal-E.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bigdata-sails-test/src/test/java/com/bigdata/rdf/sail/TestConcurrentKBCreate.java: properties.setProperty(Journal.Options.GROUP_COMMIT, " true " ); bigdata-sails-test/src/test/java/com/bigdata/rdf/sail/TestConcurrentKBCreate.java: properties.setProperty(Journal.Options.GROUP_COMMIT, " false " ); bigdata-war-html/src/main/resources/RWStore.properties:#com.bigdata.journal.Journal.groupCommit= true bigdata-war-html/src/main/webapp/WEB-INF/GraphStore.properties:#com.bigdata.journal.Journal.groupCommit= false bigdata-war-html/src/main/webapp/WEB-INF/RWStore.properties:com.bigdata.journal.Journal.groupCommit= false bin/ant-build/classes/bigdata-war/src/WEB-INF/GraphStore.properties:#com.bigdata.journal.Journal.groupCommit= true bin/ant-build/classes/bigdata-war/src/WEB-INF/RWStore.properties:#com.bigdata.journal.Journal.groupCommit= true bin/ant-build/classes/com/bigdata/journal/jini/ha/HAJournal-A.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bin/ant-build/classes/com/bigdata/journal/jini/ha/HAJournal-B.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bin/ant-build/classes/com/bigdata/journal/jini/ha/HAJournal-C.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), bin/history.txt: Added GROUP_COMMIT ( default false ) bin/history.txt: Explicitly added GROUP_COMMIT property into HA CI config files (defaults to false ) bin/src/resources/bin/config.sh: export GROUP_COMMIT= false bin/src/resources/HAJournal/HAJournal.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )), src/resources/bin/config.sh: export GROUP_COMMIT= false src/resources/HAJournal/HAJournal.config: new NV(com.bigdata.journal.Journal.Options.GROUP_COMMIT, System .getProperty( "groupCommit" , " false " )),

            People

            • Assignee:
              bryanthompson bryanthompson
              Reporter:
              bryanthompson bryanthompson
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 3 days
                3d
                Remaining:
                Remaining Estimate - 3 days
                3d
                Logged:
                Time Spent - Not Specified
                Not Specified