opendal icon indicating copy to clipboard operation
opendal copied to clipboard

refactor: Migrate cloudflare_kv from adapter::kv to Access instead

Open kingsword09 opened this issue 6 months ago • 4 comments

Which issue does this PR close?

Part https://github.com/apache/opendal/issues/5739

Rationale for this change

Part https://github.com/apache/opendal/issues/5739

What changes are included in this PR?

Migrate cloudflare_kv from adapter::kv to Access instead

Are there any user-facing changes?

kingsword09 avatar Jun 27 '25 07:06 kingsword09

The free Cloudflare account seems to trigger timeouts easily, which causes test failures.

kingsword09 avatar Jun 27 '25 07:06 kingsword09

Should key-value stores support create_dir? Many tests assume create_dir is available by default, which leads to test failures.

kingsword09 avatar Jun 27 '25 07:06 kingsword09

The bulk/get API seems to have issues—it consistently returns a 400 error regardless of how it’s called. Therefore, I’ve switched to using individual get requests combined with metadata to perform reads.

kingsword09 avatar Jun 28 '25 00:06 kingsword09

Cloudflare’s kv rest api has strict limitations, and it’s very easy to hit timeouts, which often causes test failures.

image

kingsword09 avatar Jun 28 '25 01:06 kingsword09

Due to the limitations of the free Cloudflare account, it is not possible to run all behavior tests successfully. However, I have verified that all tests pass locally.

kingsword09 avatar Jul 13 '25 04:07 kingsword09

Hi, do you have interest to take a look over this error?

https://github.com/apache/opendal/actions/runs/17574060053/job/49915435369

Cargo build completed successfully
Copying ../c/target/debug/libopendal_c.a to lib/libopendal_c.a
     Linking opendal-test-unittest
     Running opendal-test-unittest 
object.Exception@source/opendal/operator.d(39): Failed to create Operator
----------------
/opt/hostedtoolcache/dmd/2.111.0/x64/dmd2/linux/bin64/../../src/phobos/std/exception.d:521 pure @safe noreturn std.exception.bailOut!(Exception).bailOut(immutable(char)[], ulong, scope const(char)[]) [0x55c104bc21df]
/opt/hostedtoolcache/dmd/2.111.0/x64/dmd2/linux/bin64/../../src/phobos/std/exception.d:442 pure @safe bool std.exception.enforce!().enforce!(bool).enforce(bool, lazy const(char)[], immutable(char)[], ulong) [0x55c104bc215e]
source/opendal/operator.d:39 ref @trusted opendal.operator.Operator opendal.operator.Operator.__ctor(immutable(char)[], opendal.operator.OperatorOptions, bool) [0x55c104bc146d]
source/opendal/package.d:56 @safe void opendal.__unittest_L46_C8() [0x55c104bdb009]
??:? void opendal.__modtest() [0x55c104bdb9c5]
??:? int core.runtime.runModuleUnitTests().__foreachbody_L603_C5(object.ModuleInfo*) [0x55c1054e92a2]
??:? int object.ModuleInfo.opApply(scope int delegate(object.ModuleInfo*)).__lambda_L2467_C13(immutable(object.ModuleInfo*)) [0x55c1054d38bb]
??:? int rt.minfo.moduleinfos_apply(scope int delegate(immutable(object.ModuleInfo*))).__foreachbody_L582_C5(ref rt.sections_elf_shared.DSO) [0x55c1054df02f]
??:? int rt.sections_elf_shared.DSO.opApply(scope int delegate(ref rt.sections_elf_shared.DSO)) [0x55c1054df0c1]
??:? int rt.minfo.moduleinfos_apply(scope int delegate(immutable(object.ModuleInfo*))) [0x55c1054defbd]
??:? int object.ModuleInfo.opApply(scope int delegate(object.ModuleInfo*)) [0x55c1054d388d]
??:? runModuleUnitTests [0x55c1054e90d7]
??:? void rt.dmain2._d_run_main2(char[][], ulong, extern (C) int function(char[][])*).runAll() [0x55c1054dd844]
??:? void rt.dmain2._d_run_main2(char[][], ulong, extern (C) int function(char[][])*).tryExec(scope void delegate()) [0x55c1054dd7d1]
??:? _d_run_main2 [0x55c1054dd73a]
??:? _d_run_main [0x55c1054dd523]
/opt/hostedtoolcache/dmd/2.111.0/x64/dmd2/linux/bin64/../../src/druntime/import/core/internal/entrypoint.d:29 main [0x55c104bbc96d]
??:? [0x7feec202a1c9]
??:? __libc_start_main [0x7feec202a28a]
??:? _start [0x55c104bbc544]
1/1 modules FAILED unittests

Xuanwo avatar Sep 09 '25 08:09 Xuanwo

Don't know much about this D language, I'll try to see if Ai can fix it.

kingsword09 avatar Sep 09 '25 12:09 kingsword09