From 78d4547c8d2767cd5835463e44cf7f6fadcda9eb Mon Sep 17 00:00:00 2001 From: schulz2 Date: Fri, 7 Sep 2018 11:58:15 +0200 Subject: [PATCH 1/3] Null init of member vars and add log info message for app config creds These are minor changes in order to track down a customer's issue when using app config: - Add info message for user / password read from app config - Nullify several member variable strings in declaration (probably not necessary, but to be 100 per cent sure) --- .../messaging/common/PropertyProvider.java | 4 ++-- .../messaging/jms/JMSConnectionHelper.java | 17 +++++++++------- .../messaging/jms/JMSMessages.properties | 2 ++ .../ibm/streamsx/messaging/jms/JMSSink.java | 20 +++++++++---------- .../ibm/streamsx/messaging/jms/JMSSource.java | 18 ++++++++--------- 5 files changed, 33 insertions(+), 28 deletions(-) diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/common/PropertyProvider.java b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/common/PropertyProvider.java index 0f0cf05..bc8a24f 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/common/PropertyProvider.java +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/common/PropertyProvider.java @@ -13,8 +13,8 @@ // This class provides configuration data stored in PE public class PropertyProvider { - private ProcessingElement pe; - private String configurationName; + private ProcessingElement pe = null; + private String configurationName = null; private Map configuration = null; public PropertyProvider(ProcessingElement pe, String configurationName) { diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java index dcf9dbc..c62feb2 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java @@ -81,7 +81,7 @@ class JMSConnectionHelper implements ExceptionListener { private final boolean useClientAckMode; // JMS message selector - private String messageSelector; + private String messageSelector = null; // Timestamp of session creation private long sessionCreationTime; @@ -97,12 +97,12 @@ class JMSConnectionHelper implements ExceptionListener { private PropertyProvider propertyProvider = null; - private String userPropName; + private String userPropName = null; - private String passwordPropName; + private String passwordPropName = null; // CR queue name - private String destinationCR; + private String destinationCR = null; private ConnectionDocumentParser connectionDocumentParser = null; @@ -226,7 +226,6 @@ private Connection getConnect() { this(connectionDocumentParser, reconnectionPolicy, reconnectionBound, period, isProducer, maxMessageRetry, messageRetryDelay, nReconnectionAttempts, logger, useClientAckMode, msgSelectorCR, propertyProvider, userPropName, passwordPropName, destinationCR); this.nFailedInserts = nFailedInserts; - } @@ -297,6 +296,7 @@ private void createAdministeredObjects() private synchronized void createConnection() throws ConnectionException, InterruptedException { int nConnectionAttempts = 0; + // Check if connection exists or not. if (!isConnectValid()) { @@ -350,7 +350,7 @@ else if (reconnectionPolicy == ReconnectionPolicies.BoundedRetry } // sleep for delay interval Thread.sleep(delay); - // Incremet the metric nReconnectionAttempts + // Increment the metric nReconnectionAttempts nReconnectionAttempts.incrementValue(1); } @@ -445,7 +445,10 @@ private boolean refreshUserCredential() { } String userName = propertyProvider.getProperty(userPropName); + logger.log(LogLevel.INFO, "APP_CONFIG_USERNAME", new Object[] { userName }); //$NON-NLS-1$ + String password = propertyProvider.getProperty(passwordPropName, false); + logger.log(LogLevel.INFO, "APP_CONFIG_PASSWORD", new Object[] { password }); //$NON-NLS-1$ if(this.userPrincipal == userName && this.userCredential == password) { return false; @@ -472,7 +475,7 @@ boolean sendMessage(Message message) throws ConnectionException, boolean res = false; int count = 0; - + do { try { diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties index 1821aa6..4d2966b 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties @@ -17,6 +17,8 @@ ATTRIB_TYPE_FOR_STREAM_ATTRIB_NOT_SUPPORTED_SPL_TYPE=CDIST1477E Attribute Type: ATTRIB_WITH_TYPE_IN_NATIVE_SCHEMA_CANNOT_BE_MAPPED_TO_ATTRIB_WITH_TYPE=CDIST1478E Attribute Name: {0} with type: {1} in the native schema cannot be mapped with attribute: {2} with type: {3}. ATTRIB_WITH_TYPE_IN_NATIVE_SCHEMA_NOT_FOUND_IN_STREAM_SCHEMA=CDIST1479E Attribute Name: {0} with type: {1} in the native schema cannot be found in stream schema. ATTRIB_WITH_TYPE_IS_INVALID_MUST_BE_STRING=CDIST1480E Attribute Name: {0} with type: {1} is invalid. Attribute must be of type String. +APP_CONFIG_PASSWORD=From application configuration: password={0}. +APP_CONFIG_USERNAME=From application configuration: userName={0}. BLOB_NOT_SUPPORTED_FOR_JMSSOURCE=CDIST1481E BLOB is not a supported SPL type for JMSSource adapter. BLOB_NOT_SUPPORTED_FOR_MSG_CLASS=CDIST1482E Blob data type is not supported for message class {0}. CHECKPOINT=Checkpoint {0} ... diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java index 929c4ed..287a864 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java @@ -176,30 +176,30 @@ public void setnReconnectionAttempts(Metric nReconnectionAttempts) { private ConsistentRegionContext consistentRegionContext; // CR queue name for storing checkpoint information - private String consistentRegionQueueName; + private String consistentRegionQueueName = null; // variable to keep track of last successful check point sequeuce id. private long lastSuccessfulCheckpointId = 0; // unique id to identify messages on CR queue - private String operatorUniqueID; + private String operatorUniqueID = null; // application configuration name - private String appConfigName; + private String appConfigName = null; // user property name stored in application configuration - private String userPropName; + private String userPropName = null; // password property name stored in application configuration - private String passwordPropName; + private String passwordPropName = null; - private String keyStore; + private String keyStore = null; - private String trustStore; + private String trustStore = null; - private String keyStorePassword; + private String keyStorePassword = null; - private String trustStorePassword; + private String trustStorePassword = null; private boolean sslConnection; @@ -340,7 +340,7 @@ public void setConnectionDocument(String connectionDocument) { } public String getConnectionDocument() { - + if (connectionDocument == null) { connectionDocument = getOperatorContext().getPE().getApplicationDirectory() + "/etc/connections.xml"; //$NON-NLS-1$ diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java index 4914c25..89e766e 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java @@ -130,10 +130,10 @@ public void setnReconnectionAttempts(Metric nReconnectionAttempts) { // UTF-8 private String codepage = "UTF-8"; //$NON-NLS-1$ // This mandatory parameter access specifies access specification name. - private String access; + private String access = null; // This mandatory parameter connection specifies name of the connection // specification containing a JMS element - private String connection; + private String connection = null; // This optional parameter connectionDocument specifies the pathname of a // file containing the connection information. // If present, it must have exactly one value that is a String constant. @@ -183,21 +183,21 @@ public void setnReconnectionAttempts(Metric nReconnectionAttempts) { private Object resetLock = new Object(); // application configuration name - private String appConfigName; + private String appConfigName = null; // user property name stored in application configuration - private String userPropName; + private String userPropName = null; // password property name stored in application configuration - private String passwordPropName; + private String passwordPropName = null; - private String keyStore; + private String keyStore = null; - private String trustStore; + private String trustStore = null; - private String keyStorePassword; + private String keyStorePassword = null; - private String trustStorePassword; + private String trustStorePassword = null; private boolean sslConnection; From 5c6e95f918ef5e6186791db2b78775694e6e8fb9 Mon Sep 17 00:00:00 2001 From: schulz2 Date: Wed, 12 Sep 2018 20:59:47 +0200 Subject: [PATCH 2/3] Add a bunch of trace points --- .../messaging/jms/JMSConnectionHelper.java | 72 +++++++++++++++---- .../messaging/jms/JMSMessages.properties | 2 - .../ibm/streamsx/messaging/jms/JMSSink.java | 10 +++ .../ibm/streamsx/messaging/jms/JMSSource.java | 8 ++- 4 files changed, 74 insertions(+), 18 deletions(-) diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java index c62feb2..22f53be 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSConnectionHelper.java @@ -17,7 +17,6 @@ import javax.jms.JMSException; import javax.jms.Message; import javax.jms.MessageConsumer; -import javax.jms.MessageFormatException; import javax.jms.MessageProducer; import javax.jms.Session; import javax.naming.Context; @@ -25,6 +24,7 @@ import javax.naming.NamingException; import com.ibm.streams.operator.logging.LogLevel; +import com.ibm.streams.operator.logging.TraceLevel; import com.ibm.streams.operator.metrics.Metric; import com.ibm.streamsx.messaging.common.PropertyProvider; @@ -254,8 +254,8 @@ public void createInitialConnectionNoRetry() throws ConnectionException { // this subroutine creates the initial jndi context by taking the mandatory // and optional parameters - private void createAdministeredObjects() - throws NamingException { + private void createAdministeredObjects() throws NamingException { + tracer.log(TraceLevel.TRACE, "Begin createAdministeredObjects()"); //$NON-NLS-1$ // Create a JNDI API InitialContext object if none exists // create a properties object and add all the mandatory and optional @@ -288,13 +288,16 @@ private void createAdministeredObjects() destCR = (Destination) jndiContext.lookup(destinationCR); } + tracer.log(TraceLevel.TRACE, "End createAdministeredObjects()"); //$NON-NLS-1$ return; } // this subroutine creates the connection, it always verifies if we have a // successfull existing connection before attempting to create one. - private synchronized void createConnection() throws ConnectionException, - InterruptedException { + private synchronized void createConnection() throws ConnectionException, InterruptedException { + + tracer.log(TraceLevel.TRACE, "Begin createConnection()"); //$NON-NLS-1$ + int nConnectionAttempts = 0; // Check if connection exists or not. @@ -357,9 +360,12 @@ else if (reconnectionPolicy == ReconnectionPolicies.BoundedRetry } } + tracer.log(TraceLevel.TRACE, "End createConnection()"); //$NON-NLS-1$ } private synchronized void createConnectionNoRetry() throws ConnectionException { + + tracer.log(TraceLevel.TRACE, "Begin createConnectionNoRetry()"); //$NON-NLS-1$ if (!isConnectValid()) { try { @@ -370,11 +376,14 @@ private synchronized void createConnectionNoRetry() throws ConnectionException { Messages.getString("CONNECTION_TO_JMS_FAILED_NO_RECONNECT_AS_RECONNECT_POLICY_DOES_NOT_APPLY")); //$NON-NLS-1$ } } + + tracer.log(TraceLevel.TRACE, "End createConnectionNoRetry()"); //$NON-NLS-1$ } // this subroutine creates the connection, producer and consumer, throws a // JMSException if it fails private boolean connect(boolean isProducer) throws JMSException { + tracer.log(TraceLevel.TRACE, "Begin connect()"); //$NON-NLS-1$ // Create connection. if (userPrincipal != null && !userPrincipal.isEmpty() && @@ -434,28 +443,37 @@ private boolean connect(boolean isProducer) throws JMSException { getConnect().start(); } tracer.log (LogLevel.INFO, "connection successfully created"); //$NON-NLS-1$ + tracer.log(TraceLevel.TRACE, "End connect()"); //$NON-NLS-1$ + // create connection is successful, return true return true; } private boolean refreshUserCredential() { - + tracer.log(TraceLevel.TRACE, "Begin refreshUserCredential()"); //$NON-NLS-1$ if(propertyProvider == null) { + tracer.log(TraceLevel.TRACE, "End refreshUserCredential() - there is no application configuration"); //$NON-NLS-1$ return false; } String userName = propertyProvider.getProperty(userPropName); - logger.log(LogLevel.INFO, "APP_CONFIG_USERNAME", new Object[] { userName }); //$NON-NLS-1$ - String password = propertyProvider.getProperty(passwordPropName, false); - logger.log(LogLevel.INFO, "APP_CONFIG_PASSWORD", new Object[] { password }); //$NON-NLS-1$ + tracer.log(TraceLevel.DEBUG, "User name retrieved from application configuration: " + userName ); //$NON-NLS-1$ + if(password != null && !password.isEmpty()) + tracer.log(TraceLevel.DEBUG, "Password retrieved from application configuration"); //$NON-NLS-1$ + else + tracer.log(TraceLevel.DEBUG, "No password retrieved from application configuration"); //$NON-NLS-1$ + + // TODO: Aren't the following checks kind of redundant? if(this.userPrincipal == userName && this.userCredential == password) { + tracer.log(TraceLevel.TRACE, "End refreshUserCredential() - user credentials unchanged"); //$NON-NLS-1$ return false; } if((this.userPrincipal != null && userName != null && this.userPrincipal.equals(userName)) && (this.userCredential != null && password != null && this.userCredential.equals(password))) { + tracer.log(TraceLevel.TRACE, "End refreshUserCredential() - user credentials unchanged"); //$NON-NLS-1$ return false; } @@ -463,15 +481,16 @@ private boolean refreshUserCredential() { this.userPrincipal = userName; this.userCredential = password; + tracer.log(TraceLevel.TRACE, "End refreshUserCredential()"); //$NON-NLS-1$ return true; } // subroutine which on receiving a message, send it to the // destination,update the metric // nFailedInserts if the send fails + boolean sendMessage(Message message) throws ConnectionException, InterruptedException { - boolean sendMessage(Message message) throws ConnectionException, - InterruptedException { + tracer.log(TraceLevel.TRACE, "Begin sendMessage()"); //$NON-NLS-1$ boolean res = false; int count = 0; @@ -512,13 +531,16 @@ boolean sendMessage(Message message) throws ConnectionException, nFailedInserts.incrementValue(1); } + tracer.log(TraceLevel.TRACE, "End sendMessage()"); //$NON-NLS-1$ return res; } // this subroutine receives messages from a message consumer // This method supports the receive method with timeout - Message receiveMessage(long timeout) throws ConnectionException, InterruptedException, - JMSException { + Message receiveMessage(long timeout) throws ConnectionException, InterruptedException, JMSException { + + tracer.log(TraceLevel.TRACE, "Into receiveMessage()"); //$NON-NLS-1$ + try { // try to receive a message via blocking method synchronized (getSession()) { @@ -551,6 +573,7 @@ Message receiveMessage(long timeout) throws ConnectionException, InterruptedExce // i.e connection problems, this method raise the error back to caller. // No connection or message retry will be attempted. void sendMessageNoRetry(Message message) throws JMSException { + tracer.log(TraceLevel.TRACE, "Begin sendMessageNoRetry()"); //$NON-NLS-1$ try { synchronized (getSession()) { getProducer().send(message); @@ -560,20 +583,26 @@ void sendMessageNoRetry(Message message) throws JMSException { logger.log(LogLevel.WARN, "ERROR_DURING_SEND", new Object[] { e.toString() }); //$NON-NLS-1$ throw e; } + tracer.log(TraceLevel.TRACE, "End sendMessageNoRetry()"); //$NON-NLS-1$ } // send a consistent region message to the consistent region queue void sendCRMessage(Message message) throws JMSException { + + tracer.log(TraceLevel.TRACE, "Begin sendCRMessage()"); //$NON-NLS-1$ synchronized (getSession()) { getProducerCR().send(message); } - + + tracer.log(TraceLevel.TRACE, "End sendCRMessage()"); //$NON-NLS-1$ } // receive a message from consistent region queue Message receiveCRMessage(long timeout) throws JMSException { + tracer.log(TraceLevel.TRACE, "Into receiveCRMessage()"); //$NON-NLS-1$ + synchronized (getSession()) { return (getConsumerCR().receive(timeout)); } @@ -582,6 +611,8 @@ Message receiveCRMessage(long timeout) throws JMSException { // Recovers session causing unacknowledged message to be re-delivered public void recoverSession() throws JMSException, ConnectionException, InterruptedException { + tracer.log(TraceLevel.TRACE, "Begin recoverSession()"); //$NON-NLS-1$ + try { synchronized (getSession()) { tracer.log(LogLevel.INFO, "recoverSession"); //$NON-NLS-1$ @@ -599,25 +630,35 @@ public void recoverSession() throws JMSException, ConnectionException, Interrupt getSession().recover(); } } + + tracer.log(TraceLevel.TRACE, "End recoverSession()"); //$NON-NLS-1$ } public void commitSession() throws JMSException { + tracer.log(TraceLevel.TRACE, "Begin commitSession()"); //$NON-NLS-1$ + synchronized (getSession()) { getSession().commit(); } + + tracer.log(TraceLevel.TRACE, "End commitSession()"); //$NON-NLS-1$ } public void roolbackSession() throws JMSException { + tracer.log(TraceLevel.TRACE, "Begin roolbackSession()"); //$NON-NLS-1$ + synchronized (getSession()) { getSession().rollback(); } + + tracer.log(TraceLevel.TRACE, "End roolbackSession()"); //$NON-NLS-1$ } // close and invalidate the connection public void closeConnection() { - + tracer.log(TraceLevel.TRACE, "Begin closeConnection()"); //$NON-NLS-1$ if (getSession() != null) { try { getSession().close(); @@ -635,5 +676,6 @@ public void closeConnection() { setConnect(null); } } + tracer.log(TraceLevel.TRACE, "End closeConnection()"); //$NON-NLS-1$ } } diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties index 4d2966b..1821aa6 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSMessages.properties @@ -17,8 +17,6 @@ ATTRIB_TYPE_FOR_STREAM_ATTRIB_NOT_SUPPORTED_SPL_TYPE=CDIST1477E Attribute Type: ATTRIB_WITH_TYPE_IN_NATIVE_SCHEMA_CANNOT_BE_MAPPED_TO_ATTRIB_WITH_TYPE=CDIST1478E Attribute Name: {0} with type: {1} in the native schema cannot be mapped with attribute: {2} with type: {3}. ATTRIB_WITH_TYPE_IN_NATIVE_SCHEMA_NOT_FOUND_IN_STREAM_SCHEMA=CDIST1479E Attribute Name: {0} with type: {1} in the native schema cannot be found in stream schema. ATTRIB_WITH_TYPE_IS_INVALID_MUST_BE_STRING=CDIST1480E Attribute Name: {0} with type: {1} is invalid. Attribute must be of type String. -APP_CONFIG_PASSWORD=From application configuration: password={0}. -APP_CONFIG_USERNAME=From application configuration: userName={0}. BLOB_NOT_SUPPORTED_FOR_JMSSOURCE=CDIST1481E BLOB is not a supported SPL type for JMSSource adapter. BLOB_NOT_SUPPORTED_FOR_MSG_CLASS=CDIST1482E Blob data type is not supported for message class {0}. CHECKPOINT=Checkpoint {0} ... diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java index 287a864..c0e6f92 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSink.java @@ -444,6 +444,9 @@ public static void checkCompileTimeConsistentRegion(OperatorContextChecker check */ @ContextCheck(compile = false) public static void checkParametersRuntime(OperatorContextChecker checker) { + + tracer.log(TraceLevel.TRACE, "Begin checkParametersRuntime()"); //$NON-NLS-1$ + OperatorContext context = checker.getOperatorContext(); if ((context.getParameterNames().contains("reconnectionBound"))) { //$NON-NLS-1$ @@ -536,6 +539,8 @@ public static void checkParametersRuntime(OperatorContextChecker checker) { } } + + tracer.log(TraceLevel.TRACE, "End checkParametersRuntime()"); //$NON-NLS-1$ } // add compile time check for either period or reconnectionBound to be @@ -565,6 +570,9 @@ public synchronized void initialize(OperatorContext context) throws ParserConfigurationException, InterruptedException, IOException, ParseConnectionDocumentException, SAXException, NamingException, ConnectionException, Exception { + + tracer.log(TraceLevel.TRACE, "Begin initialize()"); //$NON-NLS-1$ + super.initialize(context); JmsClasspathUtil.setupClassPaths(context); @@ -694,6 +702,8 @@ public synchronized void initialize(OperatorContext context) // register for data governance registerForDataGovernance(connectionDocumentParser.getProviderURL(), connectionDocumentParser.getDestination()); + + tracer.log(TraceLevel.TRACE, "End initialize()"); //$NON-NLS-1$ } protected String getAbsolutePath(String filePath) { diff --git a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java index 89e766e..c69036e 100644 --- a/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java +++ b/com.ibm.streamsx.messaging/impl/java/src/com/ibm/streamsx/messaging/jms/JMSSource.java @@ -478,6 +478,8 @@ public static void checkErrorOutputPort(OperatorContextChecker checker) { */ @ContextCheck(compile = false) public static void checkParametersRuntime(OperatorContextChecker checker) { + + tracer.log(TraceLevel.TRACE, "Begin checkParametersRuntime()"); //$NON-NLS-1$ OperatorContext context = checker.getOperatorContext(); @@ -569,7 +571,8 @@ public static void checkParametersRuntime(OperatorContextChecker checker) { new Object[] {passwordPropName, appConfigName}); } } - + + tracer.log(TraceLevel.TRACE, "End checkParametersRuntime()"); //$NON-NLS-1$ } // add check for reconnectionPolicy is present if either period or @@ -592,6 +595,8 @@ public synchronized void initialize(OperatorContext context) IOException, ParseConnectionDocumentException, SAXException, NamingException, ConnectionException, Exception { + tracer.log(TraceLevel.TRACE, "Begin initialize()"); //$NON-NLS-1$ + super.initialize(context); consistentRegionContext = context.getOptionalContext(ConsistentRegionContext.class); @@ -690,6 +695,7 @@ public synchronized void initialize(OperatorContext context) // register for data governance registerForDataGovernance(connectionDocumentParser.getProviderURL(), connectionDocumentParser.getDestination()); + tracer.log(TraceLevel.TRACE, "End initialize()"); //$NON-NLS-1$ } protected String getAbsolutePath(String filePath) { From d9590abd6818959b30878bf89a36cd503d32a9ec Mon Sep 17 00:00:00 2001 From: schulz2 Date: Thu, 13 Sep 2018 14:28:38 +0200 Subject: [PATCH 3/3] Version bump v5.3.9 -> v5.3.10 --- com.ibm.streamsx.messaging/info.xml | 2 +- com.ibm.streamsx.messaging/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/com.ibm.streamsx.messaging/info.xml b/com.ibm.streamsx.messaging/info.xml index 3b08938..784e785 100644 --- a/com.ibm.streamsx.messaging/info.xml +++ b/com.ibm.streamsx.messaging/info.xml @@ -684,7 +684,7 @@ The <attribute> element has three possible attributes: * composite types * xml - 5.3.9 + 5.3.10 4.2.0.0 diff --git a/com.ibm.streamsx.messaging/pom.xml b/com.ibm.streamsx.messaging/pom.xml index ebe6f0c..733df9a 100644 --- a/com.ibm.streamsx.messaging/pom.xml +++ b/com.ibm.streamsx.messaging/pom.xml @@ -6,7 +6,7 @@ com.ibm.streamsx.messaging streamsx.messaging jar - 1.0.0 + 5.3.10 com.ibm.streamsx.messaging