[JBoss JIRA] (ISPN-201) make JDBC cache store use DB transactions for commit/rollback
by Sebastian Łaskawiec (JIRA)
[ https://issues.jboss.org/browse/ISPN-201?page=com.atlassian.jira.plugin.s... ]
Sebastian Łaskawiec updated ISPN-201:
-------------------------------------
Status: Resolved (was: Pull Request Sent)
Resolution: Done
> make JDBC cache store use DB transactions for commit/rollback
> -------------------------------------------------------------
>
> Key: ISPN-201
> URL: https://issues.jboss.org/browse/ISPN-201
> Project: Infinispan
> Issue Type: Feature Request
> Components: Loaders and Stores
> Reporter: Mircea Markus
> Assignee: Ryan Emerson
> Labels: modshape
> Fix For: 9.0.0.Alpha4, 9.0.0.Final
>
>
> current impl of JDBC cache store does not use DB transaction (nor local transactions/Connection.setAutocommit(false)) for storing the modifications created within a transaction. This might leave the store in an inconsistent state one operation fails during commit. This should be changed to either 1. use local transactions or 2. register the driver as an XAResource and rely on the TM to manage the boundaries. I would go for 1, as it would be more consistent with other CStore implementation (different cache store interceptor should be used for managing the 2'nd approach).
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (ISPN-201) make JDBC cache store use DB transactions for commit/rollback
by Sebastian Łaskawiec (JIRA)
[ https://issues.jboss.org/browse/ISPN-201?page=com.atlassian.jira.plugin.s... ]
Sebastian Łaskawiec updated ISPN-201:
-------------------------------------
Fix Version/s: 9.0.0.Alpha4
> make JDBC cache store use DB transactions for commit/rollback
> -------------------------------------------------------------
>
> Key: ISPN-201
> URL: https://issues.jboss.org/browse/ISPN-201
> Project: Infinispan
> Issue Type: Feature Request
> Components: Loaders and Stores
> Reporter: Mircea Markus
> Assignee: Ryan Emerson
> Labels: modshape
> Fix For: 9.0.0.Alpha4, 9.0.0.Final
>
>
> current impl of JDBC cache store does not use DB transaction (nor local transactions/Connection.setAutocommit(false)) for storing the modifications created within a transaction. This might leave the store in an inconsistent state one operation fails during commit. This should be changed to either 1. use local transactions or 2. register the driver as an XAResource and rely on the TM to manage the boundaries. I would go for 1, as it would be more consistent with other CStore implementation (different cache store interceptor should be used for managing the 2'nd approach).
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (ISPN-6679) Implement REST readiness and healthcheck probe in Kubernetes
by Sebastian Łaskawiec (JIRA)
[ https://issues.jboss.org/browse/ISPN-6679?page=com.atlassian.jira.plugin.... ]
Sebastian Łaskawiec commented on ISPN-6679:
-------------------------------------------
As a work around we can use a simple, CLI command for checking if the cluster is ready:
{code}
./ispn-cli.sh -c '/subsystem=datagrid-infinispan/cache-container=clustered/distributed-cache=*:read-attribute(name=cache-rebalancing-status)' | grep 'PENDING\|IN_PROGRESS\|SUSPENDED'
returns 0 if is *not* ready!
{code}
And there is also a work around for a liveness check:
{code}
./ispn-cli.sh -c '/:read-attribute(name=server-state)' | awk '/result/{gsub("\"", "", $3); print $3}' | grep -v running
returns 0 if is *not* running!
{code}
> Implement REST readiness and healthcheck probe in Kubernetes
> ------------------------------------------------------------
>
> Key: ISPN-6679
> URL: https://issues.jboss.org/browse/ISPN-6679
> Project: Infinispan
> Issue Type: Feature Request
> Components: Cloud Integrations
> Reporter: Sebastian Łaskawiec
> Assignee: Sebastian Łaskawiec
>
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (ISPN-6673) Implement Rolling Upgrades with Kubernetes
by Sebastian Łaskawiec (JIRA)
[ https://issues.jboss.org/browse/ISPN-6673?page=com.atlassian.jira.plugin.... ]
Sebastian Łaskawiec commented on ISPN-6673:
-------------------------------------------
A full Rolling Upgrade procedure requires an efficient way of changing configuration in runtime. This might be answered by Kubernetes Rolling Updates which require proper Health check API (see https://issues.jboss.org/browse/ISPN-6679)
> Implement Rolling Upgrades with Kubernetes
> ------------------------------------------
>
> Key: ISPN-6673
> URL: https://issues.jboss.org/browse/ISPN-6673
> Project: Infinispan
> Issue Type: Feature Request
> Components: Cloud Integrations
> Reporter: Sebastian Łaskawiec
> Assignee: Sebastian Łaskawiec
>
> There are 2 mechanisms which seems to do the same but are totally different:
> * [Kubernetes Rolling Update|http://kubernetes.io/docs/user-guide/rolling-updates/] - replaces Pods in controllable fashon
> * [Infinispan Rolling Updgrate|http://infinispan.org/docs/stable/user_guide/user_guide.html#_Ro...] - a procedure for upgrading Infinispan or changing the configuration
> Kubernetes Rolling Updates can be used very easily for changing the configuration however if changes are not runtime-compatible, one might loss data. Potential way to avoid this is to use a Cache Store. All other changes must be propagated using Infinispan Rolling Upgrade procedure.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (ISPN-6890) Infinispan server can not start with Kubernetes
by Gustavo Fernandes (JIRA)
[ https://issues.jboss.org/browse/ISPN-6890?page=com.atlassian.jira.plugin.... ]
Gustavo Fernandes reassigned ISPN-6890:
---------------------------------------
Assignee: Gustavo Fernandes (was: Sebastian Łaskawiec)
> Infinispan server can not start with Kubernetes
> -----------------------------------------------
>
> Key: ISPN-6890
> URL: https://issues.jboss.org/browse/ISPN-6890
> Project: Infinispan
> Issue Type: Bug
> Components: Cloud Integrations
> Affects Versions: 9.0.0.Alpha3, 8.2.3.Final
> Reporter: Sebastian Łaskawiec
> Assignee: Gustavo Fernandes
>
> Infinispan server can not start when deploying on Kubernetes.
> Error message:
> {code}
> $ oc logs pod/infinispan-server-1-t53ad
> =========================================================================
> JBoss Bootstrap Environment
> JBOSS_HOME: /opt/jboss/infinispan-server
> JAVA: /usr/lib/jvm/java/bin/java
> JAVA_OPTS: -server -server -Xms64m -Xmx512m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true
> =========================================================================
> java.lang.IllegalArgumentException: Failed to instantiate class "org.jboss.logmanager.handlers.PeriodicRotatingFileHandler" for handler "FILE"
> at org.jboss.logmanager.config.AbstractPropertyConfiguration$ConstructAction.validate(AbstractPropertyConfiguration.java:116)
> at org.jboss.logmanager.config.LogContextConfigurationImpl.doPrepare(LogContextConfigurationImpl.java:335)
> at org.jboss.logmanager.config.LogContextConfigurationImpl.prepare(LogContextConfigurationImpl.java:288)
> at org.jboss.logmanager.config.LogContextConfigurationImpl.commit(LogContextConfigurationImpl.java:297)
> at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:546)
> at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:97)
> at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:514)
> at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:476)
> at java.util.logging.LogManager$3.run(LogManager.java:399)
> at java.util.logging.LogManager$3.run(LogManager.java:396)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:396)
> at java.util.logging.LogManager.access$800(LogManager.java:145)
> at java.util.logging.LogManager$2.run(LogManager.java:345)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.util.logging.LogManager.ensureLogManagerInitialized(LogManager.java:338)
> at java.util.logging.LogManager.getLogManager(LogManager.java:378)
> at org.jboss.modules.Main.main(Main.java:482)
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at org.jboss.logmanager.config.AbstractPropertyConfiguration$ConstructAction.validate(AbstractPropertyConfiguration.java:114)
> ... 17 more
> Caused by: java.io.FileNotFoundException: /opt/jboss/infinispan-server/standalone/log/server.log (No such file or directory)
> at java.io.FileOutputStream.open0(Native Method)
> at java.io.FileOutputStream.open(FileOutputStream.java:270)
> at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
> at org.jboss.logmanager.handlers.FileHandler.setFile(FileHandler.java:151)
> at org.jboss.logmanager.handlers.PeriodicRotatingFileHandler.setFile(PeriodicRotatingFileHandler.java:102)
> at org.jboss.logmanager.handlers.FileHandler.setFileName(FileHandler.java:189)
> at org.jboss.logmanager.handlers.FileHandler.<init>(FileHandler.java:119)
> at org.jboss.logmanager.handlers.PeriodicRotatingFileHandler.<init>(PeriodicRotatingFileHandler.java:70)
> ... 22 more
> java.lang.IllegalStateException: WFLYSRV0124: Could not create server data directory: /opt/jboss/infinispan-server/standalone/data
> at org.jboss.as.server.ServerEnvironment.<init>(ServerEnvironment.java:473)
> at org.jboss.as.server.Main.determineEnvironment(Main.java:297)
> at org.jboss.as.server.Main.main(Main.java:94)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.modules.Module.run(Module.java:329)
> at org.jboss.modules.Main.main(Main.java:507)
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months
[JBoss JIRA] (ISPN-6890) Infinispan server can not start with Kubernetes
by Gustavo Fernandes (JIRA)
[ https://issues.jboss.org/browse/ISPN-6890?page=com.atlassian.jira.plugin.... ]
Gustavo Fernandes edited comment on ISPN-6890 at 7/25/16 9:50 AM:
------------------------------------------------------------------
It looks like something in the base image is not Openshift friendy. I tested an older incarnation of the image and it worked (http://blog.infinispan.org/2015/03/infinispan-on-openshift-v3.html).
Could you try to run the same test but with {{gustavonalle/infinispan-server}} ?
It could be related to the USER directive in the upper layers.
was (Author: gustavonalle):
It looks like something in the base image is not Openshift friendy. I tested an older incarnation of the image and it worked (http://blog.infinispan.org/2015/03/infinispan-on-openshift-v3.html).
Could you try to run the same test but with {{gustavonalle/infinispan-server}} ?
> Infinispan server can not start with Kubernetes
> -----------------------------------------------
>
> Key: ISPN-6890
> URL: https://issues.jboss.org/browse/ISPN-6890
> Project: Infinispan
> Issue Type: Bug
> Components: Cloud Integrations
> Affects Versions: 9.0.0.Alpha3, 8.2.3.Final
> Reporter: Sebastian Łaskawiec
> Assignee: Sebastian Łaskawiec
>
> Infinispan server can not start when deploying on Kubernetes.
> Error message:
> {code}
> $ oc logs pod/infinispan-server-1-t53ad
> =========================================================================
> JBoss Bootstrap Environment
> JBOSS_HOME: /opt/jboss/infinispan-server
> JAVA: /usr/lib/jvm/java/bin/java
> JAVA_OPTS: -server -server -Xms64m -Xmx512m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true
> =========================================================================
> java.lang.IllegalArgumentException: Failed to instantiate class "org.jboss.logmanager.handlers.PeriodicRotatingFileHandler" for handler "FILE"
> at org.jboss.logmanager.config.AbstractPropertyConfiguration$ConstructAction.validate(AbstractPropertyConfiguration.java:116)
> at org.jboss.logmanager.config.LogContextConfigurationImpl.doPrepare(LogContextConfigurationImpl.java:335)
> at org.jboss.logmanager.config.LogContextConfigurationImpl.prepare(LogContextConfigurationImpl.java:288)
> at org.jboss.logmanager.config.LogContextConfigurationImpl.commit(LogContextConfigurationImpl.java:297)
> at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:546)
> at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:97)
> at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:514)
> at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:476)
> at java.util.logging.LogManager$3.run(LogManager.java:399)
> at java.util.logging.LogManager$3.run(LogManager.java:396)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:396)
> at java.util.logging.LogManager.access$800(LogManager.java:145)
> at java.util.logging.LogManager$2.run(LogManager.java:345)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.util.logging.LogManager.ensureLogManagerInitialized(LogManager.java:338)
> at java.util.logging.LogManager.getLogManager(LogManager.java:378)
> at org.jboss.modules.Main.main(Main.java:482)
> Caused by: java.lang.reflect.InvocationTargetException
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at org.jboss.logmanager.config.AbstractPropertyConfiguration$ConstructAction.validate(AbstractPropertyConfiguration.java:114)
> ... 17 more
> Caused by: java.io.FileNotFoundException: /opt/jboss/infinispan-server/standalone/log/server.log (No such file or directory)
> at java.io.FileOutputStream.open0(Native Method)
> at java.io.FileOutputStream.open(FileOutputStream.java:270)
> at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
> at org.jboss.logmanager.handlers.FileHandler.setFile(FileHandler.java:151)
> at org.jboss.logmanager.handlers.PeriodicRotatingFileHandler.setFile(PeriodicRotatingFileHandler.java:102)
> at org.jboss.logmanager.handlers.FileHandler.setFileName(FileHandler.java:189)
> at org.jboss.logmanager.handlers.FileHandler.<init>(FileHandler.java:119)
> at org.jboss.logmanager.handlers.PeriodicRotatingFileHandler.<init>(PeriodicRotatingFileHandler.java:70)
> ... 22 more
> java.lang.IllegalStateException: WFLYSRV0124: Could not create server data directory: /opt/jboss/infinispan-server/standalone/data
> at org.jboss.as.server.ServerEnvironment.<init>(ServerEnvironment.java:473)
> at org.jboss.as.server.Main.determineEnvironment(Main.java:297)
> at org.jboss.as.server.Main.main(Main.java:94)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.jboss.modules.Module.run(Module.java:329)
> at org.jboss.modules.Main.main(Main.java:507)
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
8 years, 5 months