@@ -242,7 +242,6 @@ public class Manager {
242242 private volatile long latestSolidityNumShutDown ;
243243 @ Getter
244244 private long lastUsedSolidityNum = -1 ;
245- private boolean useSolidity = false ;
246245 @ Getter
247246 private int maxFlushCount ;
248247
@@ -531,18 +530,12 @@ public void init() {
531530 Thread triggerCapsuleProcessThread = new Thread (triggerCapsuleProcessLoop );
532531 triggerCapsuleProcessThread .setDaemon (true );
533532 triggerCapsuleProcessThread .start ();
534- if (eventPluginLoaded ) {
535- useSolidity = EventPluginLoader .getInstance ().isBlockLogTriggerSolidified ()
536- | EventPluginLoader .getInstance ().isTransactionLogTriggerEnable ()
537- | EventPluginLoader .getInstance ().isTransactionLogTriggerSolidified ();
538- }
539533 }
540534
541535 // start json rpc filter process
542536 if (CommonParameter .getInstance ().isJsonRpcFilterEnabled ()) {
543537 Thread filterProcessThread = new Thread (filterProcessLoop );
544538 filterProcessThread .start ();
545- useSolidity |= CommonParameter .getInstance ().isJsonRpcHttpSolidityNodeEnable ();
546539 }
547540
548541 //initStoreFactory
@@ -2039,7 +2032,7 @@ private void postSolidityFilter(final long oldSolidNum, final long latestSolidif
20392032 return ;
20402033 }
20412034
2042- List <BlockCapsule > capsuleList = geContinuousBlockCapsule (latestSolidifiedBlockNumber );
2035+ List <BlockCapsule > capsuleList = getContinuousBlockCapsule (latestSolidifiedBlockNumber );
20432036 for (BlockCapsule blockCapsule : capsuleList ) {
20442037 postBlockFilter (blockCapsule , true );
20452038 postLogsFilter (blockCapsule , true , false );
@@ -2060,20 +2053,11 @@ private void postSolidityTrigger(final long oldSolidNum, final long latestSolidi
20602053 }
20612054
20622055 if (eventPluginLoaded && EventPluginLoader .getInstance ().isSolidityTriggerEnable ()) {
2063- List <BlockCapsule > capsuleList = geContinuousBlockCapsule (latestSolidifiedBlockNumber );
2064- long solidifiedTime = -1 ;
2065- if (!capsuleList .isEmpty ()) {
2066- BlockCapsule blockCapsule = capsuleList .get (capsuleList .size () - 1 );
2067- if (blockCapsule .getNum () == latestSolidifiedBlockNumber ) {
2068- solidifiedTime = blockCapsule .getTimeStamp ();
2069- }
2070- }
2056+ List <BlockCapsule > capsuleList = getContinuousBlockCapsule (latestSolidifiedBlockNumber );
20712057 for (BlockCapsule blockCapsule : capsuleList ) {
20722058 SolidityTriggerCapsule solidityTriggerCapsule
20732059 = new SolidityTriggerCapsule (blockCapsule .getNum ());//unique key
2074- if (solidifiedTime >= 0 ) {
2075- solidityTriggerCapsule .setTimeStamp (solidifiedTime );
2076- }
2060+ solidityTriggerCapsule .setTimeStamp (blockCapsule .getTimeStamp ());
20772061 boolean result = triggerCapsuleQueue .offer (solidityTriggerCapsule );
20782062 if (!result ) {
20792063 logger .info ("Too many trigger, lost solidified trigger, block number: {}." ,
@@ -2085,10 +2069,7 @@ private void postSolidityTrigger(final long oldSolidNum, final long latestSolidi
20852069 if (CommonParameter .getInstance ().isJsonRpcHttpSolidityNodeEnable ()) {
20862070 postSolidityFilter (oldSolidNum , latestSolidifiedBlockNumber );
20872071 }
2088-
2089- if (useSolidity ) {
2090- lastUsedSolidityNum = latestSolidifiedBlockNumber ;
2091- }
2072+ lastUsedSolidityNum = latestSolidifiedBlockNumber ;
20922073 }
20932074
20942075 private void processTransactionTrigger (BlockCapsule newBlock ) {
@@ -2199,7 +2180,6 @@ private void postLogsFilter(final BlockCapsule blockCapsule, boolean solidified,
21992180 }
22002181
22012182 private void postBlockTrigger (final BlockCapsule blockCapsule ) {
2202-
22032183 // post block and logs for jsonrpc
22042184 if (CommonParameter .getInstance ().isJsonRpcHttpFullNodeEnable ()) {
22052185 postBlockFilter (blockCapsule , false );
@@ -2211,7 +2191,7 @@ private void postBlockTrigger(final BlockCapsule blockCapsule) {
22112191 if (eventPluginLoaded && EventPluginLoader .getInstance ().isBlockLogTriggerEnable ()) {
22122192 List <BlockCapsule > capsuleList = new ArrayList <>();
22132193 if (EventPluginLoader .getInstance ().isBlockLogTriggerSolidified ()) {
2214- capsuleList = geContinuousBlockCapsule (solidityBlkNum );
2194+ capsuleList = getContinuousBlockCapsule (solidityBlkNum );
22152195 } else {
22162196 capsuleList .add (blockCapsule );
22172197 }
@@ -2229,7 +2209,7 @@ private void postBlockTrigger(final BlockCapsule blockCapsule) {
22292209 if (eventPluginLoaded && EventPluginLoader .getInstance ().isTransactionLogTriggerEnable ()) {
22302210 List <BlockCapsule > capsuleList = new ArrayList <>();
22312211 if (EventPluginLoader .getInstance ().isTransactionLogTriggerSolidified ()) {
2232- capsuleList = geContinuousBlockCapsule (solidityBlkNum );
2212+ capsuleList = getContinuousBlockCapsule (solidityBlkNum );
22332213 } else {
22342214 // need to reset block
22352215 capsuleList .add (blockCapsule );
@@ -2241,13 +2221,13 @@ private void postBlockTrigger(final BlockCapsule blockCapsule) {
22412221 }
22422222 }
22432223
2244- private List <BlockCapsule > geContinuousBlockCapsule (long solidityBlkNum ) {
2224+ private List <BlockCapsule > getContinuousBlockCapsule (long solidityBlkNum ) {
22452225 List <BlockCapsule > capsuleList = new ArrayList <>();
2246- long start = lastUsedSolidityNum < 0 ? ( solidityBlkNum - 1 ) : lastUsedSolidityNum ;
2247- if (solidityBlkNum - start > 1 ) {
2248- logger .info ("Continuous block start:{}, end:{}" , start + 1 , solidityBlkNum );
2226+ long start = lastUsedSolidityNum < 0 ? solidityBlkNum : ( lastUsedSolidityNum + 1 ) ;
2227+ if (solidityBlkNum > start ) {
2228+ logger .info ("Continuous block start:{}, end:{}" , start , solidityBlkNum );
22492229 }
2250- for (long blockNum = start + 1 ; blockNum <= solidityBlkNum ; blockNum ++) {
2230+ for (long blockNum = start ; blockNum <= solidityBlkNum ; blockNum ++) {
22512231 try {
22522232 BlockCapsule capsule = chainBaseManager .getBlockByNum (blockNum );
22532233 capsuleList .add (capsule );
0 commit comments