You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by si...@barclays.com on 2019/08/23 12:38:19 UTC

Cache Miss Using Thin Client

Hello,

I have one Spring Boot app running as a client node which uses SpringCacheManager + @Cacheable annotation on a service call. This is demonstrating expected read-through behaviour.

I have a second app where I'm trying to implement the same behaviour using the thin-client. This is able to successfully "get" entries put in the cache through this application but not those using the application above, even if the key appears to be the same.

Both applications are using a key class from the same dependency and are obviously populated with the same attributes. I've used the "query" method on the cache to retrieve all the cache entries, have verified they're using the same server node, the entries are there and so on.

Any ideas why the "get" method from thin-client cannot find entries "put" by the client node? Or, any suggestions on appropriate logging to assist diagnosis?

Thanks,

Simon.


This e-mail and any attachments are confidential and intended solely for the addressee and may also be privileged or exempt from disclosure under applicable law. If you are not the addressee, or have received this e-mail in error, please notify the sender immediately, delete it from your system and do not copy, disclose or otherwise act upon any part of this e-mail or its attachments.
Internet communications are not guaranteed to be secure or virus-free. The Barclays Group does not accept responsibility for any loss arising from unauthorised access to, or interference with, any Internet communications by any third party, or from the transmission of any viruses. Replies to this e-mail may be monitored by the Barclays Group for operational or business reasons.
Any opinion or other information in this e-mail or its attachments that does not relate to the business of the Barclays Group is personal to the sender and is not given or endorsed by the Barclays Group.
Barclays Execution Services Limited provides support and administrative services across Barclays group. Barclays Execution Services Limited is an appointed representative of Barclays Bank UK plc, Barclays Bank plc and Clydesdale Financial Services Limited. Barclays Bank UK plc and Barclays Bank plc are authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and the Prudential Regulation Authority. Clydesdale Financial Services Limited is authorised and regulated by the Financial Conduct Authority.

Re: Cache Miss Using Thin Client

Posted by Alex Plehanov <pl...@gmail.com>.
Hello,

Most probably the reason is different default values of compactFooter
property of BinaryConfiguration for thin client and server (false for
client, true for server).
Here is a ticket: [1]
You can work around this by setting BinaryConfiguration including this
property explicitly.

[1] : https://issues.apache.org/jira/browse/IGNITE-10960

вт, 27 авг. 2019 г. в 13:02, <si...@barclays.com>:

> Hi Stan,
>
>
>
> Yes, the second app I referred to is using Java thing client. My Ignite
> version is 2.7.5, for all apps in question.
>
>
>
> The cache key type is one of our domain objects which has just three
> String variables; I don’t think there’s anything unusual about it. I’m not
> explicitly setting any BinaryConfiguration.
>
>
>
> Regards,
>
>
>
> Simon.
>
>
>
> *From:* Stanislav Lukyanov <st...@gmail.com>
> *Sent:* Friday, August 23, 2019 6:18 PM
> *To:* user@ignite.apache.org
> *Subject:* Re: Cache Miss Using Thin Client
>
>
>
> This message originated from outside our organisation and is from web
> based email - stanlukyanov@gmail.com
>
> Hi,
>
>
>
> I'm thinking this could be related to differences in the binary marshaller
> configuration.
>
> Are you using Java thin client? What version? What is the cache key type?
> Are you setting a BinaryConfiguration explicitly on the client or server?
>
>
>
> Thanks,
>
> Stan
>
>
>
> On Fri, Aug 23, 2019 at 3:38 PM <si...@barclays.com> wrote:
>
> Hello,
>
> I have one Spring Boot app running as a client node which uses
> SpringCacheManager + @Cacheable annotation on a service call. This is
> demonstrating expected read-through behaviour.
>
> I have a second app where I'm trying to implement the same behaviour using
> the thin-client. This is able to successfully "get" entries put in the
> cache through this application but not those using the application above,
> even if the key appears to be the same.
>
> Both applications are using a key class from the same dependency and are
> obviously populated with the same attributes. I've used the "query" method
> on the cache to retrieve all the cache entries, have verified they're using
> the same server node, the entries are there and so on.
>
> Any ideas why the "get" method from thin-client cannot find entries "put"
> by the client node? Or, any suggestions on appropriate logging to assist
> diagnosis?
>
> Thanks,
>
> Simon.
>
> This e-mail and any attachments are confidential and intended solely for
> the addressee and may also be privileged or exempt from disclosure under
> applicable law. If you are not the addressee, or have received this e-mail
> in error, please notify the sender immediately, delete it from your system
> and do not copy, disclose or otherwise act upon any part of this e-mail or
> its attachments.
>
> Internet communications are not guaranteed to be secure or virus-free. The
> Barclays Group does not accept responsibility for any loss arising from
> unauthorised access to, or interference with, any Internet communications
> by any third party, or from the transmission of any viruses. Replies to
> this e-mail may be monitored by the Barclays Group for operational or
> business reasons.
>
> Any opinion or other information in this e-mail or its attachments that
> does not relate to the business of the Barclays Group is personal to the
> sender and is not given or endorsed by the Barclays Group.
>
> Barclays Execution Services Limited provides support and administrative
> services across Barclays group. Barclays Execution Services Limited is an
> appointed representative of Barclays Bank UK plc, Barclays Bank plc and
> Clydesdale Financial Services Limited. Barclays Bank UK plc and Barclays
> Bank plc are authorised by the Prudential Regulation Authority and
> regulated by the Financial Conduct Authority and the Prudential Regulation
> Authority. Clydesdale Financial Services Limited is authorised and
> regulated by the Financial Conduct Authority.
>
> This e-mail and any attachments are confidential and intended solely for
> the addressee and may also be privileged or exempt from disclosure under
> applicable law. If you are not the addressee, or have received this e-mail
> in error, please notify the sender immediately, delete it from your system
> and do not copy, disclose or otherwise act upon any part of this e-mail or
> its attachments.
>
> Internet communications are not guaranteed to be secure or virus-free. The
> Barclays Group does not accept responsibility for any loss arising from
> unauthorised access to, or interference with, any Internet communications
> by any third party, or from the transmission of any viruses. Replies to
> this e-mail may be monitored by the Barclays Group for operational or
> business reasons.
>
> Any opinion or other information in this e-mail or its attachments that
> does not relate to the business of the Barclays Group is personal to the
> sender and is not given or endorsed by the Barclays Group.
>
> Barclays Execution Services Limited provides support and administrative
> services across Barclays group. Barclays Execution Services Limited is an
> appointed representative of Barclays Bank UK plc, Barclays Bank plc and
> Clydesdale Financial Services Limited. Barclays Bank UK plc and Barclays
> Bank plc are authorised by the Prudential Regulation Authority and
> regulated by the Financial Conduct Authority and the Prudential Regulation
> Authority. Clydesdale Financial Services Limited is authorised and
> regulated by the Financial Conduct Authority.
>

RE: Cache Miss Using Thin Client

Posted by si...@barclays.com.
Hi Stan,

Yes, the second app I referred to is using Java thing client. My Ignite version is 2.7.5, for all apps in question.

The cache key type is one of our domain objects which has just three String variables; I don’t think there’s anything unusual about it. I’m not explicitly setting any BinaryConfiguration.

Regards,

Simon.

From: Stanislav Lukyanov <st...@gmail.com>
Sent: Friday, August 23, 2019 6:18 PM
To: user@ignite.apache.org
Subject: Re: Cache Miss Using Thin Client


This message originated from outside our organisation and is from web based email - stanlukyanov@gmail.com<ma...@gmail.com>
Hi,

I'm thinking this could be related to differences in the binary marshaller configuration.
Are you using Java thin client? What version? What is the cache key type? Are you setting a BinaryConfiguration explicitly on the client or server?

Thanks,
Stan

On Fri, Aug 23, 2019 at 3:38 PM <si...@barclays.com>> wrote:
Hello,

I have one Spring Boot app running as a client node which uses SpringCacheManager + @Cacheable annotation on a service call. This is demonstrating expected read-through behaviour.

I have a second app where I'm trying to implement the same behaviour using the thin-client. This is able to successfully "get" entries put in the cache through this application but not those using the application above, even if the key appears to be the same.

Both applications are using a key class from the same dependency and are obviously populated with the same attributes. I've used the "query" method on the cache to retrieve all the cache entries, have verified they're using the same server node, the entries are there and so on.

Any ideas why the "get" method from thin-client cannot find entries "put" by the client node? Or, any suggestions on appropriate logging to assist diagnosis?

Thanks,

Simon.

This e-mail and any attachments are confidential and intended solely for the addressee and may also be privileged or exempt from disclosure under applicable law. If you are not the addressee, or have received this e-mail in error, please notify the sender immediately, delete it from your system and do not copy, disclose or otherwise act upon any part of this e-mail or its attachments.

Internet communications are not guaranteed to be secure or virus-free. The Barclays Group does not accept responsibility for any loss arising from unauthorised access to, or interference with, any Internet communications by any third party, or from the transmission of any viruses. Replies to this e-mail may be monitored by the Barclays Group for operational or business reasons.

Any opinion or other information in this e-mail or its attachments that does not relate to the business of the Barclays Group is personal to the sender and is not given or endorsed by the Barclays Group.

Barclays Execution Services Limited provides support and administrative services across Barclays group. Barclays Execution Services Limited is an appointed representative of Barclays Bank UK plc, Barclays Bank plc and Clydesdale Financial Services Limited. Barclays Bank UK plc and Barclays Bank plc are authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and the Prudential Regulation Authority. Clydesdale Financial Services Limited is authorised and regulated by the Financial Conduct Authority.

This e-mail and any attachments are confidential and intended solely for the addressee and may also be privileged or exempt from disclosure under applicable law. If you are not the addressee, or have received this e-mail in error, please notify the sender immediately, delete it from your system and do not copy, disclose or otherwise act upon any part of this e-mail or its attachments.
Internet communications are not guaranteed to be secure or virus-free. The Barclays Group does not accept responsibility for any loss arising from unauthorised access to, or interference with, any Internet communications by any third party, or from the transmission of any viruses. Replies to this e-mail may be monitored by the Barclays Group for operational or business reasons.
Any opinion or other information in this e-mail or its attachments that does not relate to the business of the Barclays Group is personal to the sender and is not given or endorsed by the Barclays Group.
Barclays Execution Services Limited provides support and administrative services across Barclays group. Barclays Execution Services Limited is an appointed representative of Barclays Bank UK plc, Barclays Bank plc and Clydesdale Financial Services Limited. Barclays Bank UK plc and Barclays Bank plc are authorised by the Prudential Regulation Authority and regulated by the Financial Conduct Authority and the Prudential Regulation Authority. Clydesdale Financial Services Limited is authorised and regulated by the Financial Conduct Authority.

Re: Cache Miss Using Thin Client

Posted by Stanislav Lukyanov <st...@gmail.com>.
Hi,

I'm thinking this could be related to differences in the binary marshaller
configuration.
Are you using Java thin client? What version? What is the cache key type?
Are you setting a BinaryConfiguration explicitly on the client or server?

Thanks,
Stan

On Fri, Aug 23, 2019 at 3:38 PM <si...@barclays.com> wrote:

> Hello,
>
> I have one Spring Boot app running as a client node which uses
> SpringCacheManager + @Cacheable annotation on a service call. This is
> demonstrating expected read-through behaviour.
>
> I have a second app where I'm trying to implement the same behaviour using
> the thin-client. This is able to successfully "get" entries put in the
> cache through this application but not those using the application above,
> even if the key appears to be the same.
>
> Both applications are using a key class from the same dependency and are
> obviously populated with the same attributes. I've used the "query" method
> on the cache to retrieve all the cache entries, have verified they're using
> the same server node, the entries are there and so on.
>
> Any ideas why the "get" method from thin-client cannot find entries "put"
> by the client node? Or, any suggestions on appropriate logging to assist
> diagnosis?
>
> Thanks,
>
> Simon.
>
> This e-mail and any attachments are confidential and intended solely for
> the addressee and may also be privileged or exempt from disclosure under
> applicable law. If you are not the addressee, or have received this e-mail
> in error, please notify the sender immediately, delete it from your system
> and do not copy, disclose or otherwise act upon any part of this e-mail or
> its attachments.
>
> Internet communications are not guaranteed to be secure or virus-free. The
> Barclays Group does not accept responsibility for any loss arising from
> unauthorised access to, or interference with, any Internet communications
> by any third party, or from the transmission of any viruses. Replies to
> this e-mail may be monitored by the Barclays Group for operational or
> business reasons.
>
> Any opinion or other information in this e-mail or its attachments that
> does not relate to the business of the Barclays Group is personal to the
> sender and is not given or endorsed by the Barclays Group.
>
> Barclays Execution Services Limited provides support and administrative
> services across Barclays group. Barclays Execution Services Limited is an
> appointed representative of Barclays Bank UK plc, Barclays Bank plc and
> Clydesdale Financial Services Limited. Barclays Bank UK plc and Barclays
> Bank plc are authorised by the Prudential Regulation Authority and
> regulated by the Financial Conduct Authority and the Prudential Regulation
> Authority. Clydesdale Financial Services Limited is authorised and
> regulated by the Financial Conduct Authority.
>