Recently, I have been looking for a way to implement thread synchronization in a Grails application which is hosted on several nodes on Rackspace. And while it's rather easy to synchronize threads within a single servlet container, it might be difficult to do it when the same data is simultaneously updated from separate server nodes. This post shows how this task can be solved with Hazelcast.
In my previous GORM related article, "Association Types in GORM", I have described how to create different types of relationships using Grails ORM. In this article, I would like to talk about several advanced GORM features that may help you in the development process, such as:
Suppose you have a system with ElasticSearch server installed and need to upgrade it to a newer version. Below is a step-by-step guide explaining how you can do it, but note that it only works for ElasticSearch pre-1.x versions. It's also assumed that you have already stopped your ElasticSearch cluster before upgrading.
Assume you have a page with pagination that displays some objects table (selected from DB with GORM criteria) in your Grails application. If you want to know total number of possible results (as if there are no pagination parameters), you can do it in this way: