This is an automated email from the ASF dual-hosted git repository.

ntimofeev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git


The following commit(s) were added to refs/heads/master by this push:
     new 633f07f  CAY-2714 Offset value is not copied to column select metadata
     new 8f22799  Merge pull request #461 from aarrsseni/CAY-2714
633f07f is described below

commit 633f07f7331c3d74090a044e30def48d77e58b17
Author: Arseni Bulatski <[email protected]>
AuthorDate: Tue Jun 29 15:20:09 2021 +0300

    CAY-2714 Offset value is not copied to column select metadata
---
 RELEASE-NOTES.txt                                         |  1 +
 .../java/org/apache/cayenne/query/BaseQueryMetadata.java  | 15 ++++++++-------
 .../java/org/apache/cayenne/query/ColumnSelectTest.java   | 11 +++++++++++
 3 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index 9d353a2..c783b25 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -28,6 +28,7 @@ CAY-2709 Modeler: Cgen fails to generate code for a new 
unsaved project with all
 CAY-2710 Modeler: modeler throws IllegalArgumentsException when root and rel 
paths have different root
 CAY-2712 Shouldn't run batch inserts with generated keys if there is reflexive 
dependency
 CAY-2713 ConcurrentModificationException when Inserting
+CAY-2714 Offset value is not copied to column select metadata
 
 ----------------------------------
 Release: 4.2.M3
diff --git 
a/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java 
b/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java
index 3b1142e..576ba88 100644
--- 
a/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java
+++ 
b/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java
@@ -36,7 +36,7 @@ import org.apache.cayenne.reflect.ClassDescriptor;
 
 /**
  * Default mutable implementation of {@link QueryMetadata}.
- * 
+ *
  * @since 1.1
  */
 class BaseQueryMetadata implements QueryMetadata, Serializable {
@@ -80,6 +80,7 @@ class BaseQueryMetadata implements QueryMetadata, 
Serializable {
 
                this.fetchingDataRows = info.isFetchingDataRows();
                this.fetchLimit = info.getFetchLimit();
+               this.fetchOffset = info.getFetchOffset();
                this.pageSize = info.getPageSize();
                this.cacheStrategy = info.getCacheStrategy();
                this.cacheKey = info.getCacheKey();
@@ -368,7 +369,7 @@ class BaseQueryMetadata implements QueryMetadata, 
Serializable {
 
        /**
         * Sets statement's fetch size (0 for no default size)
-        * 
+        *
         * @since 3.0
         */
        void setStatementFetchSize(int size) {
@@ -401,7 +402,7 @@ class BaseQueryMetadata implements QueryMetadata, 
Serializable {
 
        /**
         * Adds a joint prefetch.
-        * 
+        *
         * @since 1.2
         */
        PrefetchTreeNode addPrefetch(String path, int semantics) {
@@ -417,7 +418,7 @@ class BaseQueryMetadata implements QueryMetadata, 
Serializable {
 
        /**
         * Adds a joint prefetch.
-        * 
+        *
         * @since 4.0
         */
        void mergePrefetch(PrefetchTreeNode node) {
@@ -430,7 +431,7 @@ class BaseQueryMetadata implements QueryMetadata, 
Serializable {
 
        /**
         * Adds all prefetches from a provided collection.
-        * 
+        *
         * @since 1.2
         */
        void addPrefetches(Collection<String> prefetches, int semantics) {
@@ -443,7 +444,7 @@ class BaseQueryMetadata implements QueryMetadata, 
Serializable {
 
        /**
         * Clears all joint prefetches.
-        * 
+        *
         * @since 1.2
         */
        void clearPrefetches() {
@@ -452,7 +453,7 @@ class BaseQueryMetadata implements QueryMetadata, 
Serializable {
 
        /**
         * Removes joint prefetch.
-        * 
+        *
         * @since 1.2
         */
        void removePrefetch(String prefetch) {
diff --git 
a/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectTest.java 
b/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectTest.java
index 21872a3..ad336d0 100644
--- 
a/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectTest.java
+++ 
b/cayenne-server/src/test/java/org/apache/cayenne/query/ColumnSelectTest.java
@@ -256,4 +256,15 @@ public class ColumnSelectTest {
         assertTrue(q.metaData.isSuppressingDistinct());
     }
 
+    @Test
+    public void testOffsetCopyFromObjectSelect() {
+        ObjectSelect<Artist> select = 
ObjectSelect.query(Artist.class).offset(10).limit(10);
+        assertEquals(10, select.getOffset());
+        assertEquals(10, select.getLimit());
+
+        ColumnSelect<String> columnSelect = select.column(Artist.ARTIST_NAME);
+        assertEquals(10, columnSelect.getOffset());
+        assertEquals(10, columnSelect.getLimit());
+    }
+
 }
\ No newline at end of file

Reply via email to