Hi all,

I'm seeing issues wherein the Apache Ignite REST API appears to accept requests, but doesn't ever reply.  This doesn't always happen; for example, if I make a request that I expect the API to reject, I get back a response:

----------

# curl -v -X GET 'http://127.0.0.1:8080/ignite'
* Hostname was NOT found in DNS cache
*   Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
> GET /ignite HTTP/1.1
> User-Agent: curl/7.35.0
> Host: 127.0.0.1:8080
> Accept: */*
>
< HTTP/1.1 400 Bad Request
< Date: Thu, 20 Feb 2020 11:21:22 GMT
< Content-Type: application/json;charset=utf-8
< Content-Length: 0
* Server Jetty(9.4.11.v20180605) is not blacklisted
< Server: Jetty(9.4.11.v20180605)
<
* Connection #0 to host 127.0.0.1 left intact

----------

I expect the (above) request above to fail because I don't supply the required `cmd` parameter.

However, if I make a request that I believe should succeed, I never receive a response:

----------

# curl -v 'http://127.0.0.1:8080/ignite?cmd=version'
* Hostname was NOT found in DNS cache
*   Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
> GET /ignite?cmd=version HTTP/1.1
> User-Agent: curl/7.35.0
> Host: 127.0.0.1:8080
> Accept: */*
>

----------

`curl` will wait forever for a response that never arrives.

I tried looking for logs output by the REST API so that I could debug the issue, but failed to find any log entries emitted from the REST API.

Given that I'm new to Apache Ignite, I suspect that I'm almost certainly doing something wrong, but I have absolutely no idea what that could be.

I have a few questions:

1.) Has anyone encountered an issue similar to this with the REST API?  If so, how did you solve it?
2.) Can anyone tell me where I might find REST API log entries?
3.) I have persistence enabled in the XML configuration.  Would that conflict with the REST API? 4.) I have additional nodes (3 nodes in total) in the XML configuration.  AFAICT from log entries and some liberal use of `ss`, the nodes are communicating with each other.  Would having multiple nodes conflict with the REST API? 5.) Is there anything else I'm missing that might not be obvious to me because I'm new to Apache Ignite?

Other than (3) and (4), I think the configuration file I'm using is rather 
bland:

----------

<beans xmlns="http://www.springframework.org/schema/beans";
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd";>
  <bean class="org.apache.ignite.configuration.IgniteConfiguration">

    <property name="dataStorageConfiguration">
      <bean class="org.apache.ignite.configuration.DataStorageConfiguration">
        <!--
          Default memory region that grows endlessly. A cache is bound to this
          memory region unless it sets another one in its CacheConfiguration/
        -->
        <property name="defaultDataRegionConfiguration">
          <bean
class="org.apache.ignite.configuration.DataRegionConfiguration">
            <property name="persistenceEnabled" value="true"/>
            <property name="name" value="Default_Region"/>
            <!-- 100 MB memory region with disabled eviction -->
            <property name="initialSize" value="#{100 * 1024 * 1024}"/>
          </bean>
        </property>
      </bean>
    </property>

    <property name="discoverySpi">
      <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
        <property name="ipFinder">
          <bean
class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
            <property name="addresses">
              <list>
                <value>[other node address]</value><value>[other node address]</value>
              </list>
            </property>
          </bean>
        </property>
      </bean>
    </property>

  </bean>
</beans>

----------

(Obviously, each instance of '[other node address]' is substituted with a real IP address in the actual files I'm using.)

Thanks in advance for any help.

--
Devin

Reply via email to