hpcclab / OaaS

Object as a Service (OaaS)
9 stars 8 forks source link

{{cds}}/api/object-construct not found #154

Closed rei-smz closed 6 months ago

rei-smz commented 6 months ago

I sent this request:

POST {{cds}}/api/object-construct
Accept: application/json
Content-Type: application/json

{
  "cls": "example.text",
  "data": {},
  "labels": ["test-empty"],
  "keys": ["text"],
  "overrideUrls": {}
}

and the server responsed:

HTTP/1.1 404 Not Found
Date: Thu, 07 Mar 2024 16:58:57 GMT
Content-Type: application/json;charset=UTF-8
Content-Length: 28
Connection: close

{
  "msg": "HTTP 404 Not Found"
}

Here's the log from content delivery service:

192.168.90.229 - - [07/Mar/2024:16:58:57 +0000] "POST /api/object-construct HTTP/1.1" 404 28 "-" "vscode-restclient"

Here's the log from object controller:

2024-03-07 16:58:57,354 INFO  [io.qua.htt.access-log] (vert.x-eventloop-thread-12) "POST /api/object-construct HTTP/1.0" 404 28 27 ms
pawissanutt commented 6 months ago

Thank you for your interest in our project.

The document is not entirely updated. I am working on the big update to this project on my own fork ( https://github.com/pawissanutt/OaaS). Sadly, I don't have much time to update the document for this version. The new update will need a lot of updates to the documents. There also is a CLI that you can use in the new update.

pawissanutt commented 6 months ago

Hi, I just updated some documents on my fork. Feel free to try it if you want. (NOTE: dataflow function is still broken) After the listed features are done, I will merge them with this pull request.

rei-smz commented 6 months ago

Hi.

Thanks for your helpful suggestions. I have seen your new repo, and I find that the documentation in the new repo only introduces single node deployment. However, I wish to test OaaS on my cluster. Could you please provide a documentation on how to deploy it on a cluster?

pawissanutt commented 6 months ago

Hi,

If you only want to test OaaS, you can use the same deployment scripts with some changes:

rei-smz commented 6 months ago

Do you mean I can deploy it on my cluster using the single node deployment with these changes?

pawissanutt commented 6 months ago

Yes. Files you have to change are inside:

rei-smz commented 6 months ago

Hi.

I deployed OaaS on my cluster under the guidance in your new repo. Now, there is a problem that cr-storage-adapter can not connect to ArangoDB, but other components interact with ArangoDB normally.

Here are the logs:

2024-03-14 19:48:54,385 WARN  [com.ara.int.vel.VstCommunication] (main) Could not connect to host[addr=localhost,port=8529]: java.net.ConnectException: Connection refused
        at java.base/sun.nio.ch.Net.connect0(Native Method)
        at java.base/sun.nio.ch.Net.connect(Net.java:589)
        at java.base/sun.nio.ch.Net.connect(Net.java:578)
        at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:583)
        at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
        at java.base/java.net.Socket.connect(Socket.java:751)
        at com.arangodb.internal.velocystream.internal.VstConnection.open(VstConnection.java:176)
        at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:93)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
        at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
        at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
        at com.arangodb.internal.net.ExtendedHostResolver.resolveFromServer(ExtendedHostResolver.java:127)
        at com.arangodb.internal.net.ExtendedHostResolver.resolve(ExtendedHostResolver.java:85)
        at com.arangodb.internal.net.RoundRobinHostHandler.get(RoundRobinHostHandler.java:52)
        at com.arangodb.internal.net.DirtyReadHostHandler.get(DirtyReadHostHandler.java:50)
        at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:81)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
        at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
        at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
        at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:61)
        at com.arangodb.internal.ArangoDatabaseImpl.getInfo(ArangoDatabaseImpl.java:371)
        at com.arangodb.internal.ArangoDatabaseImpl.exists(ArangoDatabaseImpl.java:68)
        at org.hpcclab.oaas.arango.ArgRepositoryInitializer.setup(ArgRepositoryInitializer.java:33)
        at org.hpcclab.oaas.arango.ArgRepositoryInitializer_ClientProxy.setup(Unknown Source)
        at org.hpcclab.oaas.sa.ServerInitializer.onStart(ServerInitializer.java:17)
        at org.hpcclab.oaas.sa.ServerInitializer_Observer_onStart_27653d21c964782f5f9f9667d23b660a301f9de3.notify(Unknown Source)
        at io.quarkus.arc.impl.EventImpl$Notifier.notifyObservers(EventImpl.java:346)
        at io.quarkus.arc.impl.EventImpl$Notifier.notify(EventImpl.java:328)
        at io.quarkus.arc.impl.EventImpl.fire(EventImpl.java:82)
        at io.quarkus.arc.runtime.ArcRecorder.fireLifecycleEvent(ArcRecorder.java:155)
        at io.quarkus.arc.runtime.ArcRecorder.handleLifecycleEvents(ArcRecorder.java:106)
        at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy_0(Unknown Source)
        at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy(Unknown Source)
        at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
        at io.quarkus.runtime.Application.start(Application.java:101)
        at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:111)
        at io.quarkus.runtime.Quarkus.run(Quarkus.java:71)
        at io.quarkus.runtime.Quarkus.run(Quarkus.java:44)
        at io.quarkus.runtime.Quarkus.run(Quarkus.java:124)
        at io.quarkus.runner.GeneratedMain.main(Unknown Source)
        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at io.quarkus.bootstrap.runner.QuarkusEntryPoint.doRun(QuarkusEntryPoint.java:61)
        at io.quarkus.bootstrap.runner.QuarkusEntryPoint.main(QuarkusEntryPoint.java:32)

2024-03-14 19:48:54,388 WARN  [com.ara.int.vel.VstCommunication] (main) Could not connect to host[addr=localhost,port=8529] or SSL Handshake failed. Try connecting to host[addr=localhost,port=8529]
2024-03-14 19:48:54,438 ERROR [io.qua.run.Application] (main) Failed to start application (with profile [prod]): java.lang.RuntimeException: Failed to start quarkus
        at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
        at io.quarkus.runtime.Application.start(Application.java:101)
        at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:111)
        at io.quarkus.runtime.Quarkus.run(Quarkus.java:71)
        at io.quarkus.runtime.Quarkus.run(Quarkus.java:44)
        at io.quarkus.runtime.Quarkus.run(Quarkus.java:124)
        at io.quarkus.runner.GeneratedMain.main(Unknown Source)
        at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
        at java.base/java.lang.reflect.Method.invoke(Method.java:580)
        at io.quarkus.bootstrap.runner.QuarkusEntryPoint.doRun(QuarkusEntryPoint.java:61)
        at io.quarkus.bootstrap.runner.QuarkusEntryPoint.main(QuarkusEntryPoint.java:32)
Caused by: com.arangodb.ArangoDBException: Cannot contact any host!
        at com.arangodb.internal.net.RoundRobinHostHandler.get(RoundRobinHostHandler.java:56)
        at com.arangodb.internal.net.DirtyReadHostHandler.get(DirtyReadHostHandler.java:50)
        at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:112)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
        at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
        at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
        at com.arangodb.internal.net.ExtendedHostResolver.resolveFromServer(ExtendedHostResolver.java:127)
        at com.arangodb.internal.net.ExtendedHostResolver.resolve(ExtendedHostResolver.java:85)
        at com.arangodb.internal.net.RoundRobinHostHandler.get(RoundRobinHostHandler.java:52)
        at com.arangodb.internal.net.DirtyReadHostHandler.get(DirtyReadHostHandler.java:50)
        at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:81)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
        at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
        at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
        at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
        at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:61)
        at com.arangodb.internal.ArangoDatabaseImpl.getInfo(ArangoDatabaseImpl.java:371)
        at com.arangodb.internal.ArangoDatabaseImpl.exists(ArangoDatabaseImpl.java:68)
        at org.hpcclab.oaas.arango.ArgRepositoryInitializer.setup(ArgRepositoryInitializer.java:33)
        at org.hpcclab.oaas.arango.ArgRepositoryInitializer_ClientProxy.setup(Unknown Source)
        at org.hpcclab.oaas.sa.ServerInitializer.onStart(ServerInitializer.java:17)
        at org.hpcclab.oaas.sa.ServerInitializer_Observer_onStart_27653d21c964782f5f9f9667d23b660a301f9de3.notify(Unknown Source)
        at io.quarkus.arc.impl.EventImpl$Notifier.notifyObservers(EventImpl.java:346)
        at io.quarkus.arc.impl.EventImpl$Notifier.notify(EventImpl.java:328)
        at io.quarkus.arc.impl.EventImpl.fire(EventImpl.java:82)
        at io.quarkus.arc.runtime.ArcRecorder.fireLifecycleEvent(ArcRecorder.java:155)
        at io.quarkus.arc.runtime.ArcRecorder.handleLifecycleEvents(ArcRecorder.java:106)
        at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy_0(Unknown Source)
        at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy(Unknown Source)
        ... 11 more
Caused by: ArangoDBMultipleException{
        java.net.ConnectException: Connection refused
                at java.base/sun.nio.ch.Net.connect0(Native Method)
                at java.base/sun.nio.ch.Net.connect(Net.java:589)
                at java.base/sun.nio.ch.Net.connect(Net.java:578)
                at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:583)
                at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
                at java.base/java.net.Socket.connect(Socket.java:751)
                at com.arangodb.internal.velocystream.internal.VstConnection.open(VstConnection.java:176)
                at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:93)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
                at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
                at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
                at com.arangodb.internal.net.ExtendedHostResolver.resolveFromServer(ExtendedHostResolver.java:127)
                at com.arangodb.internal.net.ExtendedHostResolver.resolve(ExtendedHostResolver.java:85)
                at com.arangodb.internal.net.RoundRobinHostHandler.get(RoundRobinHostHandler.java:52)
                at com.arangodb.internal.net.DirtyReadHostHandler.get(DirtyReadHostHandler.java:50)
                at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:81)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
                at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
                at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
                at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:61)
                at com.arangodb.internal.ArangoDatabaseImpl.getInfo(ArangoDatabaseImpl.java:371)
                at com.arangodb.internal.ArangoDatabaseImpl.exists(ArangoDatabaseImpl.java:68)
                at org.hpcclab.oaas.arango.ArgRepositoryInitializer.setup(ArgRepositoryInitializer.java:33)
                at org.hpcclab.oaas.arango.ArgRepositoryInitializer_ClientProxy.setup(Unknown Source)
                at org.hpcclab.oaas.sa.ServerInitializer.onStart(ServerInitializer.java:17)
                at org.hpcclab.oaas.sa.ServerInitializer_Observer_onStart_27653d21c964782f5f9f9667d23b660a301f9de3.notify(Unknown Source)
                at io.quarkus.arc.impl.EventImpl$Notifier.notifyObservers(EventImpl.java:346)
                at io.quarkus.arc.impl.EventImpl$Notifier.notify(EventImpl.java:328)
                at io.quarkus.arc.impl.EventImpl.fire(EventImpl.java:82)
                at io.quarkus.arc.runtime.ArcRecorder.fireLifecycleEvent(ArcRecorder.java:155)
                at io.quarkus.arc.runtime.ArcRecorder.handleLifecycleEvents(ArcRecorder.java:106)
                at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy_0(Unknown Source)
                at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy(Unknown Source)
                at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
                at io.quarkus.runtime.Application.start(Application.java:101)
                at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:111)
                at io.quarkus.runtime.Quarkus.run(Quarkus.java:71)
                at io.quarkus.runtime.Quarkus.run(Quarkus.java:44)
                at io.quarkus.runtime.Quarkus.run(Quarkus.java:124)
                at io.quarkus.runner.GeneratedMain.main(Unknown Source)
                at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
                at java.base/java.lang.reflect.Method.invoke(Method.java:580)
                at io.quarkus.bootstrap.runner.QuarkusEntryPoint.doRun(QuarkusEntryPoint.java:61)
                at io.quarkus.bootstrap.runner.QuarkusEntryPoint.main(QuarkusEntryPoint.java:32)
        java.net.ConnectException: Connection refused
                at java.base/sun.nio.ch.Net.connect0(Native Method)
                at java.base/sun.nio.ch.Net.connect(Net.java:589)
                at java.base/sun.nio.ch.Net.connect(Net.java:578)
                at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:583)
                at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
                at java.base/java.net.Socket.connect(Socket.java:751)
                at com.arangodb.internal.velocystream.internal.VstConnection.open(VstConnection.java:176)
                at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:93)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
                at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
                at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
                at com.arangodb.internal.net.ExtendedHostResolver.resolveFromServer(ExtendedHostResolver.java:127)
                at com.arangodb.internal.net.ExtendedHostResolver.resolve(ExtendedHostResolver.java:85)
                at com.arangodb.internal.net.RoundRobinHostHandler.get(RoundRobinHostHandler.java:52)
                at com.arangodb.internal.net.DirtyReadHostHandler.get(DirtyReadHostHandler.java:50)
                at com.arangodb.internal.velocystream.VstCommunication.connect(VstCommunication.java:81)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:148)
                at com.arangodb.internal.velocystream.VstCommunication.execute(VstCommunication.java:144)
                at com.arangodb.internal.velocystream.VstProtocol.execute(VstProtocol.java:46)
                at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:71)
                at com.arangodb.internal.ArangoExecutorSync.execute(ArangoExecutorSync.java:61)
                at com.arangodb.internal.ArangoDatabaseImpl.getInfo(ArangoDatabaseImpl.java:371)
                at com.arangodb.internal.ArangoDatabaseImpl.exists(ArangoDatabaseImpl.java:68)
                at org.hpcclab.oaas.arango.ArgRepositoryInitializer.setup(ArgRepositoryInitializer.java:33)
                at org.hpcclab.oaas.arango.ArgRepositoryInitializer_ClientProxy.setup(Unknown Source)
                at org.hpcclab.oaas.sa.ServerInitializer.onStart(ServerInitializer.java:17)
                at org.hpcclab.oaas.sa.ServerInitializer_Observer_onStart_27653d21c964782f5f9f9667d23b660a301f9de3.notify(Unknown Source)
                at io.quarkus.arc.impl.EventImpl$Notifier.notifyObservers(EventImpl.java:346)
                at io.quarkus.arc.impl.EventImpl$Notifier.notify(EventImpl.java:328)
                at io.quarkus.arc.impl.EventImpl.fire(EventImpl.java:82)
                at io.quarkus.arc.runtime.ArcRecorder.fireLifecycleEvent(ArcRecorder.java:155)
                at io.quarkus.arc.runtime.ArcRecorder.handleLifecycleEvents(ArcRecorder.java:106)
                at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy_0(Unknown Source)
                at io.quarkus.deployment.steps.LifecycleEventsBuildStep$startupEvent1144526294.deploy(Unknown Source)
                at io.quarkus.runner.ApplicationImpl.doStart(Unknown Source)
                at io.quarkus.runtime.Application.start(Application.java:101)
                at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:111)
                at io.quarkus.runtime.Quarkus.run(Quarkus.java:71)
                at io.quarkus.runtime.Quarkus.run(Quarkus.java:44)
                at io.quarkus.runtime.Quarkus.run(Quarkus.java:124)
                at io.quarkus.runner.GeneratedMain.main(Unknown Source)
                at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
                at java.base/java.lang.reflect.Method.invoke(Method.java:580)
                at io.quarkus.bootstrap.runner.QuarkusEntryPoint.doRun(QuarkusEntryPoint.java:61)
                at io.quarkus.bootstrap.runner.QuarkusEntryPoint.main(QuarkusEntryPoint.java:32)
}
        ... 41 more
pawissanutt commented 6 months ago

I see that ArgRepositoryInitializer is mentioned in the log file. This class should not be used anymore. This means you were using the storage-adapter image from the main repo instead of the image from my repo. This can be happen if you didn't change the image name in oaas-crts.yml