Skip to main content
aem_dev1
Level 3
Oct 16, 2015 2:28 AM UTC
Solved

AEM 6.0 with tarmk cold standby

Hi,

I have installed AEM 6.0 with author mode in tomcat server. AEM will be accessed as http:<hostname:port>/<tomcatcontextpath>. I followed the steps in the link http://docs.adobe.com/docs/en/aem/6-0/deploy/recommended-deploys/tarmk-cold-standby.html for tarmk cold standby setup

In single machine two tomcats are running with different ports (one is primary other is standby).  As mentioned in the documentation i have given below configurations for standby author. As both machines are running on same machine, i left 127.0.0.1 as is. I am not sure how to pass the tomcat context path of primary author. With below configuration i am getting "java.net.ConnectException: Connection refused: /127.0.0.1:8023" in standby instance error log. 

Sample of org.apache.jackrabbit.oak.plugins.segment.standby.store.StandbyStoreService.config

     
1
2
3
4
5
6
org.apache.sling.installer.configuration.persist=B"false"
mode="standby"
primary.host="127.0.0.1"
port=I"8023"
secure=B"false"
interval=I"5"

 

Appreciated for quick response.

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Sham_HC
Sham_HCAccepted solution
Level 10
Oct 16, 2015 2:28 AM UTC

Error indicates port is open & not able to decode the stream correctly.  Go ahead to get official help on this since need screen sharing to identify.

5 replies

aem_dev1
aem_dev1Author
Level 3
Oct 16, 2015 2:28 AM UTC

Hi Sham,

In my case AEM will be accessed as https://<host:4502>/contextpath.. When i specify 8023 port, i am getting connection refused error. When i specify the AEM running port (4502), getting stream decode exceptions. Do i need to configure 8023 or AEM running port? Does AEM by default opens port 8023?

Translate
aem_dev1
aem_dev1Author
Level 3
Oct 16, 2015 2:28 AM UTC

Hi Sham,

 

For testing i have configured in the same instance. I am sure tomcat default ajp connecter port is not 8023

Translate
Sham_HC
Sham_HCAccepted solution
Level 10
Oct 16, 2015 2:28 AM UTC

Error indicates port is open & not able to decode the stream correctly.  Go ahead to get official help on this since need screen sharing to identify.

Translate
aem_dev1
aem_dev1Author
Level 3
Oct 16, 2015 2:28 AM UTC

On top of above i have updated port from 8023 to tomcat port where application is running

30.04.2015 14:31:48.325 *ERROR* [defaultEventExecutorGroup-50-1] org.apache.jackrabbit.oak.plugins.segment.standby.client.StandbyClientHandler Exception caught, closing channel.
io.netty.handler.codec.compression.DecompressionException: Found reserved unskippable chunk type: 0x48
        at io.netty.handler.codec.compression.SnappyFramedDecoder.decode(SnappyFramedDecoder.java:135)
        at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:249)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:149)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
        at io.netty.handler.timeout.ReadTimeoutHandler.channelRead(ReadTimeoutHandler.java:150)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
        at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:971)
        at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:854)
        at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:249)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:149)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:333)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:319)
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787)
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
        at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:137)
        at java.lang.Thread.run(Thread.java:745)

Translate
Sham_HC
Level 10
Oct 16, 2015 2:28 AM UTC

Looking at source code Cold stand by implementation just listen to configured TCP port  and not make use of context root. However things gone wrong in below cases like

  • Tomcat default AJP Connector port is 8023.
  • Security rules of tomcat or OS

On a side note to take advantage of memory-mapped files consumption better to run two aem instance in different box.

If you could not solve file a daycare ticket & will assist you further.

Translate