Files
Gabriel 5904f8c8bc [fix](test) Keep Lance Unicode fixture paths portable (branch-4.2) (#69126)
### What problem does this PR solve?

Related PR: #69124, #68707

Apply the fixture portability fix from #69124 to `branch-4.2`.

The Unicode Lance branch fixture tracks five files below `tree/devᲉ/`,
causing checkout failures on filesystems that cannot represent that
directory name. Store these files under `tree/dev_u1c89/` in Git and
restore the original Unicode object prefix when uploading to MinIO.
Fixture payloads and runtime Unicode branch coverage remain unchanged.
Update the fixture checker and regeneration instructions to use the
portable layout, and fail initialization if upload or relocation fails.

### Release note

None

### Check List (For Author)

- Test
    - [x] Manual test (details below)
- Behavior changed:
    - [x] No. Runtime fixture paths and contents are unchanged.
- Does this need documentation?
    - [x] No. Fixture regeneration instructions are updated inline.

Validation on this branch:

- All tracked paths are ASCII and contain no literal backslashes.
- Fresh checkout of all 10 Unicode fixture files with
`core.protectNTFS=true` and `core.protectHFS=true` on Linux.
- `lance_build_unicode_branch.py --check` passes with pylance 12.0.0.
- Python, YAML and shell syntax checks and `git diff --check` pass.
- Verified the complete Iceberg fixture/setup subtree is identical to
#69124. That change was validated against temporary MinIO with two
initialization runs, matching all 515 original object keys and blob
hashes, and successful reads of both Unicode branch versions and vector
search. The MinIO integration test was not repeated for this identical
port.

Full Doris regression tests and a native Windows checkout were not run
locally.

### Check List (For Reviewer who merge this PR)

- [ ] Confirm the release note
- [ ] Confirm test cases
- [ ] Confirm document
- [ ] Add branch pick label
2026-10-15 23:38:47 +08:00
..
…

Doris Develop Environment based on docker

Preparation

  1. Download the Doris code repo

    $ cd /to/your/workspace/
    $ git clone https://github.com/apache/doris.git
    $ cd doris
    $ git submodule update --init --recursive
    

    You can remove the .git dir in doris/ to make the dir size smaller. So that the following generated docker image can be smaller.

  2. Copy Dockerfile

    $ cd /to/your/workspace/
    $ cp doris/docker/Dockerfile ./
    

After preparation, your workspace should like this:

.
├── Dockerfile
├── doris
│   ├── be
│   ├── bin
│   ├── build.sh
│   ├── conf
│   ├── DISCLAIMER-WIP
│   ├── docker
│   ├── docs
│   ├── env.sh
│   ├── fe
│   ├── ...

Build docker image

$ cd /to/your/workspace/
$ docker build -t doris:v1.0  .

doris is docker image repository name and v1.0 is tag name, you can change them to whatever you like.

Use docker image

This docker image you just built does not contain Doris source code repo. You need to download it first and map it to the container. (You can just use the one you used to build this image before)

$ docker run -it -v /your/local/path/doris/:/root/doris/ doris:v1.0
$ docker run -it -v /your/local/.m2:/root/.m2 -v /your/local/doris-DORIS-x.x.x-release/:/root/doris-DORIS-x.x.x-release/ doris:v1.0

Then you can build source code inside the container.

$ cd /root/doris/
$ sh build.sh

NOTICE

The default JDK version is openjdk 11, if you want to use openjdk 8, you can run the command:

$ alternatives --set java java-1.8.0-openjdk.x86_64
$ alternatives --set javac java-1.8.0-openjdk.x86_64
$ export JAVA_HOME=/usr/lib/jvm/java-1.8.0

The version of jdk you used to run FE must be the same version you used to compile FE.

Latest update time

2022-1-23