Skip to content

Iceberg core code#1836

Closed
unidevel wants to merge 1 commit into
ibm-iceberg-basefrom
ibm-iceberg-new
Closed

Iceberg core code#1836
unidevel wants to merge 1 commit into
ibm-iceberg-basefrom
ibm-iceberg-new

Conversation

@unidevel

@unidevel unidevel commented Mar 23, 2026

Copy link
Copy Markdown
Collaborator

Fix the rebase issue in PR 425

Steps to resolve conflicts

  1. Prepare remote and local branch(only once)
git remote add ibm git@github.com:IBM/velox.git
git fetch ibm
git checkout -b ibm-iceberg-new ibm/ibm-iceberg-new
  1. Fetch latest changes and update
git fetch ibm

# checkout and reset(in case someone else changed it)
git checkout ibm-iceberg-new
git reset --hard ibm/ibm-iceberg-new

# get the commit sha
git log --oneline | head -1

Get the commit sha from output:

1629285ce Iceberg core code
  1. Get the staging branch from conflict message and reset to it, e.g.

Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

# Now keep in the branch ibm-iceberg-new
git reset --hard ibm/staging/staging-rebase
  1. Cherry-pick and resolve conflict
git cherry-pick <commit sha from step 1>

# resolve conflict
# will continue cherry-pick after testing in step 5
  1. Save the script below in the project root and run it for testing:
#!/bin/sh
export EXTRA_CMAKE_FLAGS=" \
  -DVELOX_BUILD_TESTING=ON \
  -DVELOX_ENABLE_GEO=ON \
  -DVELOX_ENABLE_S3=ON \
  -DVELOX_ENABLE_PARQUET=ON \
  -DVELOX_MONO_LIBRARY=OFF \
  -DVELOX_ENABLE_SPARK_FUNCTIONS=ON \
  -DCMAKE_EXPORT_COMPILE_COMMANDS=1"
make clean

TESTS=" \
  velox_functions_iceberg_test \
  velox_hive_iceberg_test \
  velox_hive_connector_test \
  velox_hive_iceberg_dwrf_insert_test \
  velox_hive_iceberg_equality_delete_test \
  velox_hive_iceberg_deletion_vector_writer_test \
  velox_hive_iceberg_deletion_vector_test \
  velox_parquet_e2e_filter_test \
  velox_dwio_arrow_parquet_writer_test \
  velox_dwio_parquet_reader_test \
  velox_hive_iceberg_insert_test"

TESTS_REGEX=$(echo "$TESTS" | xargs | tr ' ' '|')

cmake -B "_build/release"
cmake --build _build/release --target $TESTS -j16

cd _build/release
ctest -V -R $TESTS_REGEX
  1. Force push updated PR branch and base branch back
# after conflict resolved
git add -u .
git cherry-pick --continue

git push ibm  ibm-iceberg-new --force
git push ibm HEAD~1: ibm-iceberg-base --force
  1. Add alchemy comments to this PR

Find the timestamp from conflict message like:

  • On a PR: alchemy merge @2026-05-15T06:38:01Z
  • On an issue: alchemy link [updated comma-separated commit SHAs for this issue] @2026-05-15T06:38:01Z

Copy the command like alchemy merge @2026-05-15T06:38:01Z and paste it as a new comment in this PR

Then follow the steps below to do the test.

@unidevel unidevel requested a review from majetideepak as a code owner March 23, 2026 22:12
@unidevel

unidevel commented Mar 23, 2026

Copy link
Copy Markdown
Collaborator Author

Git Conflict Resolution Guide for Iceberg PRs

Overview

This guide provides general strategies and rules for resolving merge conflicts when integrating Iceberg-related changes, particularly during cherry-pick operations. It emphasizes systematic conflict resolution, dependency management, and thorough validation.

Core Principles

1. Understand Before Acting

  • Never blindly accept changes - Always review both versions
  • Identify the intent - Understand what each version is trying to achieve
  • Assess impact - Consider how changes affect the broader codebase

2. Preserve User Intent

  • Favor incoming changes for core features - Cherry-picked commits usually contain complete implementations
  • Keep existing changes for local customizations - Preserve IBM-specific modifications
  • Merge complementary changes - Combine when both versions add value

3. Validate Thoroughly

  • Compile after each resolution - Catch missing dependencies early
  • Run tests before committing - Ensure functionality is preserved
  • Let users review - Always pause before final commit

General Resolution Strategy

Step 1: Analyze Conflicts

# Check conflict status
git status

# View conflicting sections
git diff --ours <file>    # Current branch (HEAD)
git diff --theirs <file>  # Incoming changes

Decision Matrix:

File Type Strategy Rationale
Core implementation (.cpp) Prefer --theirs Complete, tested implementation
Test files (.cpp) Prefer --theirs Updated test coverage
Headers (.h) Manual merge May need both declarations
Build files (CMakeLists.txt) Manual merge Combine all components
Configuration files Manual merge Preserve local settings

Step 2: Resolve by File Type

A. Implementation Files (Prefer Incoming)

For core feature implementations:

# Accept incoming changes
git checkout --theirs path/to/file.cpp
# DO NOT stage yet - let user review with git diff first

When to use:

  • New feature implementations
  • Bug fixes from upstream
  • Complete refactors

When NOT to use:

  • Files with IBM-specific customizations
  • Files with local performance optimizations
  • Files with security patches

B. Header Files (Manual Merge)

Headers often need both versions:

# Edit manually to combine declarations
vim path/to/file.h
# DO NOT stage yet - let user review with git diff first

Merge checklist:

  • Include all method declarations from both versions
  • Remove duplicate declarations
  • Maintain consistent ordering
  • Update documentation comments
  • Verify forward declarations

C. Build Configuration (Manual Merge)

CMakeLists.txt requires careful merging:

Pattern to follow:

# Combine source files from both versions
add_executable(
  target_name
  FileFromHEAD.cpp        # Keep existing
  FileFromIncoming.cpp    # Add new
  SharedFile.cpp          # Keep once
)

# Remove duplicate sections
# Keep only one VELOX_ENABLE_PARQUET block
# Consolidate target_link_libraries calls

Common issues:

  • Duplicate source files → Keep once
  • Duplicate library links → Consolidate
  • Conflicting compiler flags → Choose most restrictive

Step 3: Fix Missing Dependencies

After resolving conflicts, compilation often reveals missing dependencies:

Missing Method Declarations

Symptom:

error: use of undeclared identifier 'methodName'

Solution:

  1. Search for method usage in resolved files
  2. Find original declaration in incoming commit
  3. Add declaration to appropriate header file
  4. Add implementation to source file

Template for adding methods:

// In header file (.h)
/// Brief description of what the method does.
/// @param param1 Description of parameter
/// @return Description of return value
ReturnType methodName(ParamType param1);

// In source file (.cpp)
ReturnType ClassName::methodName(ParamType param1) {
  // Implementation
}

Missing Helper Functions

Common missing helpers in Iceberg tests:

// File size utility
static uint64_t getFileSize(const std::string& path);

// Split creation helpers
std::vector<std::shared_ptr<ConnectorSplit>> makeIcebergSplits(...);
std::shared_ptr<ConnectorSplit> makeIcebergSplitWithInfoColumns(...);

// Column handle creation
ColumnHandleMap makeColumnHandles(...);

Step 4: Build and Test

Critical Rule: Always build and test before completing cherry-pick.

# Build affected targets
cd _build/release
make <target_name> -j8

# Run tests
./<path_to_test_binary>

# Verify all tests pass
# Expected: [  PASSED  ] X tests

If tests fail:

  1. Review test output for specific failures
  2. Check for missing test data or configuration
  3. Verify all test dependencies are resolved
  4. Consider if test expectations need updating

Step 5: User Review (CRITICAL)

Rule: Never automatically stage or commit resolved conflicts. Always let the user review changes first.

# DO NOT run these automatically:
# git add <files>
# git cherry-pick --continue

# Instead, inform the user:
echo "✅ Conflicts resolved and tests pass!"
echo ""
echo "Please review the changes locally:"
echo "  git diff                    # Review unstaged changes"
echo "  git diff <specific-file>    # Review specific file"
echo ""
echo "After review, stage and continue:"
echo "  git add <files>             # Stage resolved files"
echo "  git status                  # Verify all conflicts resolved"
echo "  git cherry-pick --continue  # Complete the cherry-pick"

Why this matters:

  • Users can review exact changes with git diff before staging
  • Users may have additional context about the changes
  • Local policies may require specific commit messages
  • Changes may need additional documentation
  • Users may want to split changes into multiple commits
  • Users can make final adjustments before committing

Step 6: Complete Cherry-Pick (User Action)

After user review and staging:

# Review unstaged changes first
git diff

# Stage resolved files after review
git add <resolved-files>

# Verify all conflicts are resolved
git status

# Review staged changes
git diff --cached

# If satisfied, continue
GIT_EDITOR=true git cherry-pick --continue

# Or with custom commit message
git cherry-pick --continue

Conflict Resolution Rules

Rule 1: Minimal Change Principle

  • Only modify what's necessary to resolve conflicts
  • Don't refactor or "improve" unrelated code
  • Match existing code style and patterns

Rule 2: Dependency Completeness

  • If you add a method call, ensure the method exists
  • If you add a class usage, ensure headers are included
  • If you add a library dependency, update build files

Rule 3: Test Coverage Preservation

  • Keep all test files from both versions if possible
  • Merge test cases rather than choosing one version
  • Ensure test infrastructure (base classes) is complete

Rule 4: Build Configuration Integrity

  • Include all source files needed by both versions
  • Remove duplicates but keep all unique entries
  • Maintain proper dependency ordering

Rule 5: Documentation Synchronization

  • Update comments to reflect merged functionality
  • Keep documentation from the more recent version
  • Add notes about IBM-specific modifications

Common Conflict Patterns

Pattern 1: Test Base Class Evolution

Conflict: Test base class has different helper methods in each version.

Resolution:

  1. Keep all helper method declarations from both versions
  2. Implement all methods in source file
  3. Remove duplicate implementations
  4. Update tests to use consistent method names

Pattern 2: CMakeLists.txt Source File Lists

Conflict: Different test files in each version.

Resolution:

# Merge approach
add_executable(
  test_target
  # Files from HEAD
  ExistingTest1.cpp
  ExistingTest2.cpp
  # Files from incoming
  NewTest1.cpp
  NewTest2.cpp
  # Shared files (keep once)
  TestBase.cpp
)

Pattern 3: Header Include Guards

Conflict: Different include structures.

Resolution:

  • Keep the more comprehensive include set
  • Remove duplicate includes
  • Maintain alphabetical ordering
  • Group by category (system, third-party, local)

Pattern 4: Method Signature Changes

Conflict: Same method with different signatures.

Resolution:

  1. Check which signature is used in incoming commit
  2. Update declaration to match
  3. Update all call sites if necessary
  4. Consider adding overload if both are needed

Troubleshooting Guide

Issue: Compilation Errors After Resolution

Symptoms:

  • Undeclared identifier errors
  • Missing header file errors
  • Linker errors about undefined references

Diagnosis:

# Check what's missing
make <target> 2>&1 | grep "error:"

# Search for method definitions
git log -p --all -S "methodName"

# Check incoming commit for context
git show <commit_hash>

Solutions:

  1. Add missing method declarations to headers
  2. Add missing implementations to source files
  3. Include missing header files
  4. Update CMakeLists.txt with missing dependencies

Issue: Test Failures After Resolution

Symptoms:

  • Tests compile but fail at runtime
  • Assertion failures
  • Segmentation faults

Diagnosis:

# Run tests with verbose output
./test_binary --gtest_filter="FailingTest.*" --gtest_verbose

# Check test expectations
git diff HEAD~1 <test_file>

Solutions:

  1. Verify test data files are present
  2. Check test setup/teardown methods are complete
  3. Ensure test base class is fully implemented
  4. Update test expectations if behavior changed

Issue: Linker Warnings

Symptoms:

  • warning: ignoring duplicate libraries
  • Multiple definition errors

Diagnosis:

# Check CMakeLists.txt for duplicates
grep -n "target_link_libraries" CMakeLists.txt

Solutions:

  1. Remove duplicate library entries
  2. Consolidate multiple target_link_libraries calls
  3. Remove redundant source files from add_executable

Best Practices Checklist

Before completing cherry-pick:

  • All conflicts resolved (files edited)
  • Code compiles without errors
  • All tests pass
  • No new compiler warnings introduced
  • User has reviewed changes with git diff
  • All resolved files staged with git add
  • All conflicts marked as resolved in git (git status shows no conflicts)
  • Documentation updated if needed
  • Commit message is appropriate

Example Workflow

Here's a complete example workflow:

# 1. Start cherry-pick
git cherry-pick <commit-hash>

# 2. Conflicts detected
git status  # Shows conflicting files

# 3. Resolve each file (DO NOT stage yet)
git checkout --theirs file1.cpp

# Manual merge for file2.h
vim file2.h

# 4. Build and test
cd _build/release
make target -j8
./path/to/test

# 5. If compilation fails, add missing dependencies
vim path/to/header.h  # Add declarations
vim path/to/source.cpp  # Add implementations

# 6. Rebuild and retest
make target -j8
./path/to/test

# 7. Inform user to review (DO NOT stage or commit)
echo "✅ Conflicts resolved and tests pass!"
echo ""
echo "Please review changes locally:"
echo "  git diff                    # Review all unstaged changes"
echo "  git diff file1.cpp          # Review specific file"
echo ""
echo "After review, stage and continue:"
echo "  git add <files>             # Stage resolved files"
echo "  git status                  # Verify all conflicts resolved"
echo "  git cherry-pick --continue  # Complete the cherry-pick"

# 8. User reviews and continues (manual step)
git diff                    # Review changes
git add file1.cpp file2.h   # Stage after review
git status                  # Verify
git cherry-pick --continue  # Complete

Summary

Successful conflict resolution requires:

  1. Understanding - Know what each version is trying to achieve
  2. Strategy - Apply appropriate resolution method per file type
  3. Completeness - Ensure all dependencies are resolved
  4. Validation - Build and test thoroughly
  5. Review - Let users verify changes before committing

By following these rules and strategies, you can systematically resolve conflicts while maintaining code quality and preserving both upstream improvements and local customizations.

Quick Reference

Situation Command When to Use
Accept incoming git checkout --theirs <file> Core implementations
Accept current git checkout --ours <file> Local customizations
Manual merge Edit file (do not stage yet) Headers, build files
Review unstaged git diff Review before staging
Review specific file git diff <file> Review one file
Stage files git add <files> After review
Check status git status Verify resolution progress
Review staged git diff --cached Before committing
Continue git cherry-pick --continue After staging
Abort git cherry-pick --abort Start over

Remember: The goal is not just to resolve conflicts, but to create a working, tested, and maintainable codebase that combines the best of both versions.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Invalid alchemy verb: rebase

@unidevel

Copy link
Copy Markdown
Collaborator Author

alchemy merge @2026-03-23T21:37:29Z

@prestodb-ci

Copy link
Copy Markdown
Collaborator

alchemy link 4f10953 @2026-03-23T21:37:29Z

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Added new rebase item:

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit 4f10953 in rebase request #1841:

exit status 1
error: could not apply 4f10953ed... Iceberg core code

Auto-merging velox/connectors/hive/iceberg/CMakeLists.txt
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.h
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergParquetStatsCollector.h

Please:

  1. Rebase your branch with staging/staging-e154cab1a-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.
  2. Comment on this issue:
alchemy link [updated comma-separated commit SHAs for this issue] @2026-03-24T15:53:57Z
  1. Re-open Rebase branch staging-e154cab1a-rebase with staging-e154cab1a-head (e154cab) #1841 to retry the cherry-pick.

@unidevel

Copy link
Copy Markdown
Collaborator Author

alchemy link 83bb267 @2026-03-24T15:53:57Z

@prestodb-ci

Copy link
Copy Markdown
Collaborator

The following unexpired item was removed at 2026-03-24T15:53:57Z by @unidevel via #1836 (comment):

Added new rebase item:

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit 83bb267 in rebase request #1850:

exit status 1
error: could not apply 83bb26744... Iceberg core code

Auto-merging velox/docs/configs.rst
Auto-merging velox/dwio/common/Options.h
Auto-merging velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
Auto-merging velox/dwio/parquet/writer/Writer.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/writer/Writer.cpp
Auto-merging velox/dwio/parquet/writer/Writer.h

Please:

  1. Rebase your branch with staging/staging-ad018364c-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.
  2. Comment on this issue:
alchemy link [updated comma-separated commit SHAs for this issue] @2026-03-26T07:55:58Z
  1. Re-open Rebase branch staging-ad018364c-rebase with staging-ad018364c-head (ad01836) #1850 to retry the cherry-pick.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit a3ff9cb in rebase request #2161:

exit status 1
error: could not apply a3ff9cb0ed... Iceberg core code

Auto-merging velox/connectors/hive/iceberg/CMakeLists.txt
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/CMakeLists.txt
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.h
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.h
Auto-merging velox/connectors/hive/iceberg/tests/CMakeLists.txt
Auto-merging velox/docs/configs.rst

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-19T00:22:41Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-19T00:22:41Z
    
  3. Re-open Rebase branch staging-rebase (a93c9e8) with staging-rebase-head (eecbc60) #2161 to retry the cherry-pick.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit a3ff9cb in rebase request #2162:

exit status 1
error: could not apply a3ff9cb0ed... Iceberg core code

Auto-merging velox/connectors/hive/iceberg/CMakeLists.txt
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/CMakeLists.txt
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.h
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.h
Auto-merging velox/connectors/hive/iceberg/tests/CMakeLists.txt
Auto-merging velox/docs/configs.rst

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-19T00:22:41Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-19T00:22:41Z
    
  3. Re-open Rebase branch staging-rebase (a93c9e8) with staging-rebase-head (eecbc60) #2162 to retry the cherry-pick.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit a3ff9cb in rebase request #2163:

exit status 1
error: could not apply a3ff9cb0ed... Iceberg core code

Auto-merging velox/connectors/hive/iceberg/CMakeLists.txt
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/CMakeLists.txt
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.h
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.h
Auto-merging velox/connectors/hive/iceberg/tests/CMakeLists.txt
Auto-merging velox/docs/configs.rst

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-19T04:34:03Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-19T04:34:03Z
    
  3. Re-open Rebase branch staging-rebase (a93c9e8) with staging-rebase-head (5ded8d7) #2163 to retry the cherry-pick.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit a3ff9cb in rebase request #2165:

exit status 1
error: could not apply a3ff9cb0ed... Iceberg core code

Auto-merging velox/connectors/hive/iceberg/CMakeLists.txt
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/CMakeLists.txt
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.h
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.h
Auto-merging velox/connectors/hive/iceberg/tests/CMakeLists.txt
Auto-merging velox/docs/configs.rst

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-19T11:32:13Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-19T11:32:13Z
    
  3. Re-open Rebase branch staging-rebase (a93c9e8) with staging-rebase-head (1d05891) #2165 to retry the cherry-pick.

Co-authored-by: mohsaka <135669458+mohsaka@users.noreply.github.com>
Co-authored-by: nmahadevuni <nmahadevuni@gmail.com>
@mohsaka

mohsaka commented Jun 19, 2026

Copy link
Copy Markdown
Collaborator

alchemy merge @2026-06-19T11:32:13Z

@prestodb-ci

Copy link
Copy Markdown
Collaborator

alchemy link 0a9da7d @2026-06-19T11:32:13Z

@prestodb-ci

Copy link
Copy Markdown
Collaborator

The following unexpired item was removed at 2026-06-19T11:32:13Z by @prestodb-ci via #1836 (comment):

Added new rebase item:

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit 0a9da7d in rebase request #2180:

exit status 1
error: could not apply 0a9da7da18... Iceberg core code

Auto-merging velox/connectors/hive/HiveConfig.cpp
Auto-merging velox/connectors/hive/HiveConfig.h
Auto-merging velox/connectors/hive/HiveDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/HiveDataSink.cpp
Auto-merging velox/connectors/hive/HiveDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/tests/HiveDataSinkTest.cpp
Auto-merging velox/docs/configs.rst
Auto-merging velox/dwio/common/Options.h
Auto-merging velox/dwio/parquet/tests/reader/E2EFilterTest.cpp
Auto-merging velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
Auto-merging velox/dwio/parquet/writer/Writer.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/writer/Writer.cpp

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-24T04:58:17Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-24T04:58:17Z
    
  3. Re-open Rebase branch staging-rebase (a4c9d0c) with staging-rebase-head (e603dc1) #2180 to retry the cherry-pick.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit 0a9da7d in rebase request #2181:

exit status 1
error: could not apply 0a9da7da18... Iceberg core code

Auto-merging velox/connectors/hive/HiveConfig.cpp
Auto-merging velox/connectors/hive/HiveConfig.h
Auto-merging velox/connectors/hive/HiveDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/HiveDataSink.cpp
Auto-merging velox/connectors/hive/HiveDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/tests/HiveDataSinkTest.cpp
Auto-merging velox/docs/configs.rst
Auto-merging velox/dwio/common/Options.h
Auto-merging velox/dwio/parquet/tests/reader/E2EFilterTest.cpp
Auto-merging velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
Auto-merging velox/dwio/parquet/writer/Writer.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/writer/Writer.cpp

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-24T08:52:22Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-24T08:52:22Z
    
  3. Re-open Rebase branch staging-rebase (a4c9d0c) with staging-rebase-head (45975e8) #2181 to retry the cherry-pick.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit 0a9da7d in rebase request #2182:

exit status 1
error: could not apply 0a9da7da18... Iceberg core code

Auto-merging velox/connectors/hive/HiveConfig.cpp
Auto-merging velox/connectors/hive/HiveConfig.h
Auto-merging velox/connectors/hive/HiveDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/HiveDataSink.cpp
Auto-merging velox/connectors/hive/HiveDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/tests/HiveDataSinkTest.cpp
Auto-merging velox/docs/configs.rst
Auto-merging velox/dwio/common/Options.h
Auto-merging velox/dwio/parquet/tests/reader/E2EFilterTest.cpp
Auto-merging velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
Auto-merging velox/dwio/parquet/writer/Writer.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/writer/Writer.cpp

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-24T17:01:03Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-24T17:01:03Z
    
  3. Re-open Rebase branch staging-rebase (a4c9d0c) with staging-rebase-head (3458f93) #2182 to retry the cherry-pick.

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Failed to cherry-pick commit 0a9da7d in rebase request #2183:

exit status 1
error: could not apply 0a9da7da18... Iceberg core code

Auto-merging velox/connectors/hive/CMakeLists.txt
Auto-merging velox/connectors/hive/HiveConfig.cpp
Auto-merging velox/connectors/hive/HiveConfig.h
Auto-merging velox/connectors/hive/HiveDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/HiveDataSink.cpp
Auto-merging velox/connectors/hive/HiveDataSink.h
Auto-merging velox/connectors/hive/iceberg/IcebergDataSink.cpp
CONFLICT (content): Merge conflict in velox/connectors/hive/iceberg/IcebergDataSink.cpp
Auto-merging velox/connectors/hive/iceberg/IcebergParquetStatsCollector.cpp
Auto-merging velox/connectors/hive/tests/HiveDataSinkTest.cpp
Auto-merging velox/docs/configs.rst
Auto-merging velox/dwio/common/Options.h
Auto-merging velox/dwio/parquet/tests/reader/E2EFilterTest.cpp
Auto-merging velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/tests/writer/ParquetWriterTest.cpp
Auto-merging velox/dwio/parquet/writer/Writer.cpp
CONFLICT (content): Merge conflict in velox/dwio/parquet/writer/Writer.cpp

Please:

  1. Rebase your branch with staging/staging-rebase and fix the conflict. If the rebase item is a PR, you can change the base branch to this staging branch.

  2. Comment on this issue with the updated rebase item.

    For a PR (copy and edit):

    alchemy merge @2026-06-25T00:33:43Z
    

    For an issue (copy and edit):

    alchemy link [updated comma-separated commit SHAs for this issue] @2026-06-25T00:33:43Z
    
  3. Re-open Rebase branch staging-rebase (a4c9d0c) with staging-rebase-head (1966276) #2183 to retry the cherry-pick.

@unidevel

Copy link
Copy Markdown
Collaborator Author

alchemy close @2026-06-25T00:33:43Z

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Closed rebase item in group default at 2026-06-25T00:33:43Z.

@unidevel

Copy link
Copy Markdown
Collaborator Author

alchemy close @2026-06-25T00:33:00Z

@prestodb-ci

Copy link
Copy Markdown
Collaborator

Closed rebase item in group default at 2026-06-25T00:33:00Z.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants