You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by "Tishj (via GitHub)" <gi...@apache.org> on 2026/07/21 20:22:59 UTC

[I] [FixtureCatalog][Dev][Scan Planning] Catalog server returns invalid (cut off) JSON response [iceberg]

Tishj opened a new issue, #17324:
URL: https://github.com/apache/iceberg/issues/17324

   ### Apache Iceberg version
   
   1.11.0 (latest release)
   
   ### Query engine
   
   Other
   
   ### Please describe the bug 🐞
   
   Spark sql:
   ```sql
   CREATE TABLE default.alter_partition_drop_column(
       a VARCHAR(10),
       b BOOLEAN,
       c DATE,
       d INTEGER
   ) PARTITIONED BY (a, c);
   
   INSERT INTO default.alter_partition_drop_column VALUES
       ('test', true, CAST('1983-05-21' AS DATE), 2324);
   
   ALTER TABLE default.alter_partition_drop_column DROP PARTITION FIELD c;
   
   ALTER TABLE default.alter_partition_drop_column DROP COLUMN c;
   ```
   
   docker-compose image:
   `apache/iceberg-rest-fixture:latest`
   
   <details>
   <summary>docker-compose.yml</summary>
   
   ```yml
   services:
     rest:
       image: apache/iceberg-rest-fixture:latest
       container_name: iceberg-rest
       networks:
         iceberg_net:
       ports:
         - 8181:8181
       environment:
         - AWS_ACCESS_KEY_ID=admin
         - AWS_SECRET_ACCESS_KEY=password
         - AWS_REGION=us-east-1
         - CATALOG_WAREHOUSE=s3://warehouse/
         - CATALOG_IO__IMPL=org.apache.iceberg.aws.s3.S3FileIO
         - CATALOG_S3_ENDPOINT=http://minio:9000
     minio:
       image: minio/minio
       container_name: minio
       environment:
         - MINIO_ROOT_USER=admin
         - MINIO_ROOT_PASSWORD=password
         - MINIO_DOMAIN=minio
       networks:
         iceberg_net:
           aliases:
             - warehouse.minio
       volumes:
         - type: bind
           source: ../data/generated/iceberg/fixture-latest/
           target: /data
       ports:
         - 9001:9001
         - 9000:9000
       command: ["server", "/data", "--console-address", ":9001"]
     mc:
       depends_on:
         - minio
       image: minio/mc
       container_name: mc
       networks:
         iceberg_net:
       environment:
         - AWS_ACCESS_KEY_ID=admin
         - AWS_SECRET_ACCESS_KEY=password
         - AWS_REGION=us-east-1
       entrypoint: |
         /bin/sh -c "
         until /usr/bin/mc alias set minio http://minio:9000 admin password; do
           echo 'Waiting for MinIO...';
           sleep 2;
         done;
   
         # Wait for bucket to exist or create it
         if ! /usr/bin/mc ls minio/warehouse > /dev/null 2>&1; then
           /usr/bin/mc mb minio/warehouse;
         fi
   
         # Optional: clean the namespace for testing
         /usr/bin/mc rm -r --force minio/warehouse/default || true;
   
         # Create the `default` namespace (directory) and dummy metadata file
         /usr/bin/mc mb minio/warehouse/default;
         echo '{}' > /tmp/metadata.json;
         /usr/bin/mc cp /tmp/metadata.json minio/warehouse/default/metadata/metadata.json;
   
         # Make it public (optional)
         /usr/bin/mc policy set public minio/warehouse;
   
         echo 'MinIO warehouse and default namespace initialized.';
         tail -f /dev/null
         "
   networks:
     iceberg_net:
   </details>
   
   Request to `http://127.0.0.1:8181/v1/namespaces/default/tables/alter_partition_drop_column/plan`:
   ```json
   {"snapshot-id":7435989651564931343,"case-sensitive":true,"use-snapshot-schema":false}
   ```
   Response from the server catalog:
   ```json
   {"status":"completed","plan-id":"sync-32f14095-0fed-4bc4-b1ed-aa4a2b4174b7","file-scan-tasks":[{"data-file":{"spec-id":0,"content":"data","file-path":"s3://warehouse/default/alter_partition_drop_column/data/a=test/c=1983-05-21/00000-2-94359d00-02aa-4c14-9f97-48dff44953e2-0-00001.parquet","file-format":"parquet","partition":["test"
   ```
   
   With headers, to verify the response is correctly received:
   ```
     request_error = ""
     reason = "OK"
     headers = {
       headers = size=5 {
         [0] = (first = "Content-Length", second = "332")
         [1] = (first = "Content-Type", second = "application/json")
         [2] = (first = "Server", second = "Jetty(12.1.8)")
         [3] = (first = "Date", second = "Tue, 21 Jul 2026 20:11:24 GMT")
         [4] = (first = "Vary", second = "Accept-Encoding")
       }
     }
     success = true
   ```
   
   It looks like the server hit an error while constructing the result, probably because the field that the data file was partitioned on is no longer part of the schema.
   But that error appears to get swallowed, resulting in a 200 response.
   
   ### Willingness to contribute
   
   - [ ] I can contribute a fix for this bug independently
   - [ ] I would be willing to contribute a fix for this bug with guidance from the Iceberg community
   - [x] I cannot contribute a fix for this bug at this time


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org


Re: [I] [FixtureCatalog][Dev][Scan Planning] Catalog server returns invalid (cut off) JSON response [iceberg]

Posted by "Tishj (via GitHub)" <gi...@apache.org>.
Tishj commented on issue #17324:
URL: https://github.com/apache/iceberg/issues/17324#issuecomment-5151232826

   I can't assign anyone, you'd have to ask someone else.
   I'd say go for it though 👍 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org


Re: [I] [FixtureCatalog][Dev][Scan Planning] Catalog server returns invalid (cut off) JSON response [iceberg]

Posted by "Abhishek-Gawande (via GitHub)" <gi...@apache.org>.
Abhishek-Gawande commented on issue #17324:
URL: https://github.com/apache/iceberg/issues/17324#issuecomment-5108375770

   Hi @Tishj , I'm new to the Iceberg community but I have a strong Java backend background and would love to work on this as my first issue. It looks like an exception is being swallowed during the JSON serialization of the /plan response. I'll reproduce it using the provided docker-compose file and track down the missing exception handling. Could this be assigned to me?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org