4)                         +                           W W W W W W W   W   h         t    } ! " #$ #% &'()* +,-. / 01 2 34 35 36 37 89 :;<=> ?@ ?AB CD EFGHI yJKL yMNOPQ RSTUVWX Y Z [  \] ^ _ ` a b c d e f  g h  i ij +klm not uv wxy z{ |}~   InnerClassesCREATE_INDEXT_TYPELjava/lang/String; ConstantValueDELETE_INDEX_TYPESYSMETA_CHANGE_TYPEHIGHEST_PRIORITYI HIGH_PRIORITYMEDIUM_PRIORITY LOW_PRIORITY HEADER_ID HEADER_PATHHEADER_INDEX_TYPE EXCHANGE_NAMEINDEX_QUEUE_NAMEINDEX_ROUTING_KEYspringConfigFileURLENV_NAME_OF_PROPERTIES_FILEloggerLorg/apache/log4j/Logger;defaultExternalPropertiesFilepropertyFilePathmultipleThreadZnThreads rabbitMQhost rabbitMQportrabbitMQusernamerabbitMQpasswordrabbitMQMaxPriorityrabbitMQconnection Lcom/rabbitmq/client/Connection;rabbitMQchannelLcom/rabbitmq/client/Channel;context0Lorg/springframework/context/ApplicationContext; solrIndex"Lorg/dataone/cn/indexer/SolrIndex;specifiedThreadNumberStrspecifiedThreadNumberexecutor&Ljava/util/concurrent/ExecutorService;main([Ljava/lang/String;)VCodeLineNumberTableLocalVariableTableworker$Lorg/dataone/cn/indexer/IndexWorker;eLjava/lang/Exception;args[Ljava/lang/String; propertyFile StackMapTable$mloadExternalPropertiesFile(Ljava/lang/String;)V defaultFileLjava/io/File;9Lorg/apache/commons/configuration/ConfigurationException;loadAdditionalPropertyFile()Vthis Exceptions(Ljava/lang/Boolean;)V initializeLjava/lang/Boolean;initIndexQueuefactory'Lcom/rabbitmq/client/ConnectionFactory;durable exclusive autoDeleteargusLjava/util/Map;LocalVariableTypeTable5Ljava/util/Map;initIndexParsersinitExecutorService!Ljava/lang/NumberFormatException;availableProcessorsstartconsumerLcom/rabbitmq/client/Consumer;autoAck indexOjbect8(Lorg/dataone/indexer/queue/IndexQueueMessageParser;JZ)V sysmetaOnlythreadIdJend-Lorg/dataone/service/exceptions/InvalidToken;.Lorg/dataone/service/exceptions/NotAuthorized;/Lorg/dataone/service/exceptions/NotImplemented;/Lorg/dataone/service/exceptions/ServiceFailure;)Lorg/dataone/service/exceptions/NotFound;*Ljavax/xml/xpath/XPathExpressionException;0Lorg/dataone/service/exceptions/UnsupportedType;Lorg/xml/sax/SAXException;0Ljavax/xml/parsers/ParserConfigurationException;2Lorg/apache/solr/client/solrj/SolrServerException;-Lorg/dataone/exceptions/MarshallingException;+Lorg/apache/commons/codec/EncoderException; Ljava/lang/InterruptedException;Ljava/io/IOException;/Lorg/dataone/service/exceptions/InvalidRequest;"Ljava/lang/InstantiationException;"Ljava/lang/IllegalAccessException;parser3Lorg/dataone/indexer/queue/IndexQueueMessageParser; deliveryTagpid)Lorg/dataone/service/types/v1/Identifier; indexTypepriority finalFilePathWYZ[]^_`abcdefNghstopstartLivenessProbe scheduler/Ljava/util/concurrent/ScheduledExecutorService;pathLjava/nio/file/Path;taskLjava/lang/Runnable;lambda$startLivenessProbe$0(Ljava/nio/file/Path;)V access$000()Lorg/apache/log4j/Logger; access$100\(Lorg/dataone/cn/indexer/IndexWorker;Lorg/dataone/indexer/queue/IndexQueueMessageParser;JZ)Vx0x1x2x3 access$200L(Lorg/dataone/cn/indexer/IndexWorker;)Ljava/util/concurrent/ExecutorService; access$300C(Lorg/dataone/cn/indexer/IndexWorker;)Lcom/rabbitmq/client/Channel; SourceFileIndexWorker.java   QR +IndexWorker.main - Starting index worker...  *+"org/dataone/cn/indexer/IndexWorker 23 M3java/lang/Exceptionjava/lang/StringBuilder/IndexWorker.main() exiting due to fatal error:      3   VIndexWorker.loadExternalPropertiesFile - the configuration path specified by users is  java/io/File 2+  TIndexWorker.loadExternalPropertiesFile - the configuration path users specified is 6. The file exists and is readable. So it will be used.I. But the file does NOT exist or is NOT readable. So it will NOT be used.DATAONE_INDEXER_CONFIG YIndexWorker.loadExternalPropertiesFile - the configuration path from the env variable is IndexWorker.loadExternalPropertiesFile - the configuration path can be read from the env variable DATAONE_INDEXER_CONFIG and its value is &. The file exists and it will be used. IndexWorker.loadExternalPropertiesFile - the configure path can't be read either by users specified or from the env variable DATAONE_INDEXER_CONFIG. However, the default external file  exists and it will be used. +MIndexWorker.loadExternalPropertiesFile - loaded the properties from the file 7org/apache/commons/configuration/ConfigurationExceptionQIndexWorker.loadExternalPropertiesFile - can't load any properties from the file  since 5. It will use the default properties in the jar file. IndexWorker.loadExternalPropertiesFile - can't load an external properties file from the env variable DATAONE_INDEXER_CONFIG or from the default path G. Dataone-indexer will use the properties file embedded in the jar fileMIndexWorker.loadAdditionalPropertyFile - loaded the properties from the file QIndexWorker.loadAdditionalPropertyFile - can't load any properties from the file .pIndexWorker.loadAdditionalPropertyFile - can't load an additional property file since its path is null or blank.  27              I3 <3 F3   index.rabbitmq.hostname localhost index.rabbitmq.hostport index.rabbitmq.usernameguestindex.rabbitmq.passwordindex.rabbitmq.max.priority %com/rabbitmq/client/ConnectionFactory +  + +  3IndexWorker.initIndexQueue - Set RabbitMQ host to: 3IndexWorker.initIndexQueue - Set RabbitMQ port to:    dataone-indexdirect java/util/HashMapx-max-priority  ;IndexWorker.initIndexQueue - Set RabbitMQ max priority to: index  MIndexWorker.initIndexQueue - the allowed unacknowledged message(s) number is SIndexWorker.initIndexQueue - Connected to the RabbitMQ queue with the name of indexBorg/springframework/context/support/ClassPathXmlApplicationContext/index-parser-context.xml  org/dataone/cn/indexer/SolrIndexindex.thread.number0 java/lang/NumberFormatExceptionFIndexWorker.initExecutorService - IndexWorker cannot parse the string ? specified by property index.thread.number into a number since 9. The default value 0 will be used as the specified value   K aIndexWorker.initExecutorService - the size of index thread pool specified in the propery file is 5. The size computed from the available processors is 6. Final computed thread pool size for index executor:  X. Since its value is 1, we do NOT need the executor service and use a single thread way.$org/dataone/cn/indexer/IndexWorker$1 2 LIndexWorker.start - Calling basicConsume and waiting for the coming messages      &IndexWorker.indexOjbect - identifier:   , the index type: 8, sending acknowledgement back to rabbitmq failed since *. So rabbitmq may resend the message again  5IndexWorker.consumer.indexOjbect by multiple thread? , with the thread id E - Received the index task from the index queue with the identifier: *, the file path (null means not to have): , the priotity: create sysmetadelete -org/dataone/service/exceptions/InvalidRequest0000.DataONE indexer does not know the index type:  in the index task 2+IndexWorker.indexOjbect with the thread id F - Completed the index task from the index queue with the identifier:  and the time taking is  milliseconds+org/dataone/service/exceptions/InvalidToken?IndexWorker.indexOjbect - cannot index the task for identifier ,org/dataone/service/exceptions/NotAuthorized-org/dataone/service/exceptions/NotImplemented-org/dataone/service/exceptions/ServiceFailure 'org/dataone/service/exceptions/NotFound(javax/xml/xpath/XPathExpressionException.org/dataone/service/exceptions/UnsupportedTypeorg/xml/sax/SAXException.javax/xml/parsers/ParserConfigurationException0org/apache/solr/client/solrj/SolrServerException+org/dataone/exceptions/MarshallingException)org/apache/commons/codec/EncoderExceptionjava/lang/InterruptedExceptionjava/io/IOException java/lang/InstantiationException java/lang/IllegalAccessException 33IndexWorker.stop - stop the index queue connection. ./livenessprobejava/lang/String BootstrapMethods3       6IndexWorker.startLivenessProbe - livenessProbe started  8IndexWorker.startLivenessProbe - failed to update file:  '/etc/dataone/dataone-indexer.propertiesjava/lang/Objectid index_type%java/util/concurrent/TimeoutExceptionjava/lang/Booleanjava/lang/Throwable1org/dataone/indexer/queue/IndexQueueMessageParser'org/dataone/service/types/v1/Identifierorg/apache/log4j/Loggerinfo(Ljava/lang/Object;)Vappend-(Ljava/lang/String;)Ljava/lang/StringBuilder; getMessage()Ljava/lang/String;toStringfatal*(Ljava/lang/Object;Ljava/lang/Throwable;)Vjava/lang/Systemexit(I)Vtrimequals(Ljava/lang/Object;)Zexists()ZcanReadgetenv&(Ljava/lang/String;)Ljava/lang/String;"org/dataone/configuration/SettingsaugmentConfigurationerrorvalueOf(Z)Ljava/lang/Boolean; booleanValue+org/dataone/cn/indexer/object/ObjectManager getInstance/()Lorg/dataone/cn/indexer/object/ObjectManager;6org/dataone/cn/indexer/annotation/OntologyModelService:()Lorg/dataone/cn/indexer/annotation/OntologyModelService;getConfiguration2()Lorg/apache/commons/configuration/Configuration;.org/apache/commons/configuration/Configuration getString8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;getInt(Ljava/lang/String;I)I(Ljava/lang/String;)IsetHostsetPort setPassword setUsernamesetAutomaticRecoveryEnabled(Z)VsetNetworkRecoveryIntervaldebug(I)Ljava/lang/StringBuilder; newConnection"()Lcom/rabbitmq/client/Connection;com/rabbitmq/client/Connection createChannel()Lcom/rabbitmq/client/Channel;com/rabbitmq/client/ChannelexchangeDeclareExchange DeclareOkT(Ljava/lang/String;Ljava/lang/String;Z)Lcom/rabbitmq/client/AMQP$Exchange$DeclareOk;java/lang/Integer(I)Ljava/lang/Integer; java/util/Mapput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; queueDeclareQueueP(Ljava/lang/String;ZZZLjava/util/Map;)Lcom/rabbitmq/client/AMQP$Queue$DeclareOk; queueBindBindOk_(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/rabbitmq/client/AMQP$Queue$BindOk;basicQos.org/springframework/context/ApplicationContextgetBean&(Ljava/lang/String;)Ljava/lang/Object;parseIntgetLocalizedMessagewarnjava/lang/Runtime getRuntime()Ljava/lang/Runtime;()Ijava/lang/Mathmax(II)Ijava/util/concurrent/ExecutorsnewFixedThreadPool)(I)Ljava/util/concurrent/ExecutorService;D(Lorg/dataone/cn/indexer/IndexWorker;Lcom/rabbitmq/client/Channel;)V basicConsumeE(Ljava/lang/String;ZLcom/rabbitmq/client/Consumer;)Ljava/lang/String;currentTimeMillis()J getIdentifier+()Lorg/dataone/service/types/v1/Identifier; getIndexType getPriority getObjectPathbasicAck(JZ)VgetValuejava/lang/Thread currentThread()Ljava/lang/Thread;getId(Z)Ljava/lang/StringBuilder;(J)Ljava/lang/StringBuilder;update?(Lorg/dataone/service/types/v1/Identifier;Ljava/lang/String;Z)Vremove,(Lorg/dataone/service/types/v1/Identifier;)V'(Ljava/lang/String;Ljava/lang/String;)VclosenewScheduledThreadPool2(I)Ljava/util/concurrent/ScheduledExecutorService;java/nio/file/Pathsget;(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;  run*(Ljava/nio/file/Path;)Ljava/lang/Runnable;java/util/concurrent/TimeUnitSECONDSLjava/util/concurrent/TimeUnit;-java/util/concurrent/ScheduledExecutorServicescheduleAtFixedRate](Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; java/nio/file/attribute/FileTime fromMillis%(J)Ljava/nio/file/attribute/FileTime;java/nio/file/FilessetLastModifiedTimeL(Ljava/nio/file/Path;Ljava/nio/file/attribute/FileTime;)Ljava/nio/file/Path;-(Ljava/lang/Object;)Ljava/lang/StringBuilder; getLogger,(Ljava/lang/Class;)Lorg/apache/log4j/Logger; !com/rabbitmq/client/AMQP$Exchange+com/rabbitmq/client/AMQP$Exchange$DeclareOkcom/rabbitmq/client/AMQP$Queue(com/rabbitmq/client/AMQP$Queue$DeclareOk%com/rabbitmq/client/AMQP$Queue$BindOk! "% com/rabbitmq/client/AMQP"java/lang/invoke/LambdaMetafactory metafactory'Lookup(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;(%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandles! ennu!         CL+Y M, %M Y ,, . lm npqurs;t?vBw* !!"C#$ 9%&'()! *+*** Y YL+-+& Y ' Y  !" Y #qcYL+-+& Y $%' Y $ BY&L+0+) Y '&(&eW) Y *SL Y ,-+./0# Y 1&2+!/:Hk6:NYg4:U,-U,-Y4,-,!.%& k/#r/#>w0/ 1+g*]*Q*) Y 3*9L Y 4*-+.50 6-0+. -01JX[^f1*!.g%&p0-237 *78   4 5627g*9*:*;*<*=*>*?* @*A**B*C*D*E*+F*G*H*IJWKWZW XZ[\]"^(_-`2a7b<cAdFeKRVZ^bfg4 g89&f:;56<3Np*LMNO<*LP(Q=*LRSO>*LTSO?*LUV@WYXL+*<Y+*=Z+*?[+*>\+]+'^ Y _*<` Y a*=b`=*+cA**Ad*efgW>6hYi:j*@klW Y m*@b`*noW*nenpW Y q*;b**;rs`v!1AOW_gow|    .>Zgo>p4 W=>?@ABCD BE56F3=*B&YL*B*tYuvB+çM+,**BwxyC "%%(%   *"<# =4 & GDHI3*Lz{OD**D|E6L*E Y ~*D+<d<*;*E*E*; **E;*;G Y *Ebb*;b**;*:> Y *Ebb*;b*:}R)+1,-$.@/N.Q2X3\4e5w689<=?BE 2!J4 XK&^L2-K:M3t&Y**L=*n+WO nop%q &4 NOP5QRĸ7+:+:+6 +: * >:  Y  07  Y    b6 *C  Y6 *C  <*C&Y Y 7  Y    b e7:  Y - 0:  Y - 0:  Y - 0:  Y -  y:  Y - 0J:  Y -  :  Y -  :  Y - ¶ :  Y - Ķ :  Y - ƶ U:  Y - ȶ $:  Y - ʶ :  Y - ̶ :  Y - ζ :  Y - ϶0b:  Y - Ѷ 1:  Y - Ӷ (+ fffffMf|ffff@fqffff5fdfrz{ |}~(+-Ucfn 05P/GJMO`vy|~  ":=@BSknqs/257H^adfw8-9!" S S nTU 5WVU *!W *!X *!Y ,!Z O*![ ~,!\ ,!] ,!^ ,!_ B,!` s,!a ,!b ,!c ,!d 7*!e f,!f ,!g 4 hijUMU klmn o &+ :pq(():s"^ :pq((rnsntnupvnwpxpypzp{p|p}p~ppnp-3Q**Aֶ  4 56 3.KٸL+M*, ܲ޹W%- ) **WL Y *+  )!d*&N9Q *+ 9*  i U /*9  /*9  32&ST V:     #&$p qrsr