Giter Site home page Giter Site logo

javakdb's People

Contributors

5jt avatar charlieskelton-kx avatar kxcontrib avatar mbogus avatar simongarland avatar sshanks-kx avatar sv avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

javakdb's Issues

Build warnings (depreciated code) when using openjdk11

Below has recreation & output

docker run -it -v C:\Users\sshanks\Development\javakdb:/source --rm openjdk:11 /bin/bash

mkdir -p build/classes
javac -d build/classes src/kx/c.java src/kx/examples/Feed.java src/kx/examples/QueryResponse.java src/kx/examples/Subscriber.java src/kx/examples/Server.java src/kx/examples/TypesMapping.java src/kx/examples/GridViewer.java
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

src/kx/c.java:1402: warning: [deprecation] Boolean(boolean) in Boolean has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                    ^
src/kx/c.java:1402: warning: [deprecation] Byte(byte) in Byte has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                                                          ^
src/kx/c.java:1402: warning: [deprecation] Short(short) in Short has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                                                                            ^
src/kx/c.java:1402: warning: [deprecation] Integer(int) in Integer has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                                                                                                       ^
src/kx/c.java:1402: warning: [deprecation] Long(long) in Long has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                                                                                                                       ^
src/kx/c.java:1402: warning: [deprecation] Float(double) in Float has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                                                                                                                                    ^
src/kx/c.java:1402: warning: [deprecation] Double(double) in Double has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                                                                                                                                                  ^
src/kx/c.java:1402: warning: [deprecation] Character(char) in Character has been deprecated
  public static Object[] NULL={null,new Boolean(false),new UUID(0,0),null,new Byte((byte)0),new Short(Short.MIN_VALUE),new Integer(ni),new Long(nj),new Float(nf),new Double(nf),new Character(' '),"",
                                                                                                                                                                                 ^
src/kx/examples/Feed.java:12: warning: [deprecation] Double(double) in Double has been deprecated
        Object[] row={new c.Timespan(),"SYMBOL",new Double(93.5),new Long(300)};
                                                ^
src/kx/examples/Feed.java:12: warning: [deprecation] Long(long) in Long has been deprecated
        Object[] row={new c.Timespan(),"SYMBOL",new Double(93.5),new Long(300)};

Using non-existent key on Flip at method throws ArrayIndexOutOfBoundsException

Using a non-existent key on a Flip throws a java.lang.ArrayIndexOutOfBoundsException. Should prob document in code (so that users expect it) or change.

        String[] x = new String[] {"Key"};
        String[][] y = new String[][] {{"Value1","Value2","Value3"}};
        c.Dict dict = new c.Dict(x, y);
        c.Flip flip = new c.Flip(dict);
        flip.at("NOT FOUND");

Compile warning on unit tests with java11

[WARNING] /C:/Users/sshanks/Development/javakdb/src/test/java/kx/cTest.java:[25,29] Byte(byte) in java.lang.Byte has been deprecated
[WARNING] /C:/Users/sshanks/Development/javakdb/src/test/java/kx/cTest.java:[29,29] Float(double) in java.lang.Float has been deprecated
[WARNING] /C:/Users/sshanks/Development/javakdb/src/test/java/kx/cTest.java:[49,29] Byte(byte) in java.lang.Byte has been deprecated
[WARNING] /C:/Users/sshanks/Development/javakdb/src/test/java/kx/cTest.java:[53,29] Float(double) in java.lang.Float has been deprecated

cannot pass test when using 'mvn clean install'

I am using javakdb-1.0

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running kx.cTest
discarded unexpected incoming async msg!
0
true
0
0
0.0
Tests run: 85, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 0.152 sec <<< FAILURE!
testSerializeDeserializeDateArray(kx.cTest)  Time elapsed: 0.003 sec  <<< FAILURE!
java.lang.AssertionError
	at org.junit.Assert.fail(Assert.java:86)
	at org.junit.Assert.assertTrue(Assert.java:41)
	at org.junit.Assert.assertTrue(Assert.java:52)
	at kx.cTest.testSerializeDeserializeDateArray(cTest.java:695)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
testSerializeDeserializeDate(kx.cTest)  Time elapsed: 0.001 sec  <<< FAILURE!
java.lang.AssertionError: expected: java.sql.Date<4707-11-29> but was: java.sql.Date<4707-11-29>
	at org.junit.Assert.fail(Assert.java:88)
	at org.junit.Assert.failNotEquals(Assert.java:743)
	at org.junit.Assert.assertEquals(Assert.java:118)
	at org.junit.Assert.assertEquals(Assert.java:144)
	at kx.cTest.testSerializeDeserializeDate(cTest.java:380)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Results :
Failed tests:   testSerializeDeserializeDateArray(kx.cTest)
  testSerializeDeserializeDate(kx.cTest): expected: java.sql.Date<4707-11-29> but was: java.sql.Date<4707-11-29>
Tests run: 85, Failures: 2, Errors: 0, Skipped: 0

Add ability to do Maven builds

http://maven.apache.org/

Currently using a Makefile, which some Windows based java devs may not have installed or be knowledgeable on.
One of the most popular now for Java is Maven, which also helps out in package management/versioning/etc.

Update docs, fix doc links

The move from some docs previously located in code.kx.com to repo may have produced duplicate info & dropped links.
Can be confusing.
Currently docs/whitepaper/README.md is present, but dont see any links to it.

Publishing to maven repo on releases

Depends on #10

Could potentially push to one of the main maven repos when going a github release (i.e. current travis build file has the ability to run scripts/etc only on release).
Would need to incorporate version used in github release (i.e. v1.1 is pushed to maven as v1.1)

It would allow other Java projects to add javakdb as a dependancy & automatically pull down the jar/etc when they build instead of doing various manual steps.

Javadoc warnings from java 15 and above

See travis CI output when building with java15

Generating docs/kx/c.html...
src/kx/c.java:1112: warning: no comment
  protected void w(int msgType,Object x) throws IOException{
                 ^
src/kx/c.java:1294: warning: no @return
  public MsgHandler getMsgHandler(){
                    ^
src/kx/c.java:1520: warning: no comment
  public static void tm(){
                     ^
Generating docs/kx/c.Dict.html...
src/kx/c.java:427: warning: no comment
    public Dict(Object X,Object Y){
           ^
Generating docs/kx/c.Flip.html...
src/kx/c.java:440: warning: no comment
    public Flip(Dict X){
           ^
src/kx/c.java:444: warning: no comment
    public Object at(String s){
                  ^
Generating docs/kx/c.IAuthenticate.html...
Generating docs/kx/c.KException.html...
Generating docs/kx/c.Minute.html...
src/kx/c.java:324: warning: no comment
    public Minute(int x){
           ^
Generating docs/kx/c.Month.html...
src/kx/c.java:298: warning: no comment
    public Month(int x){
           ^
Generating docs/kx/c.MsgHandler.html...
src/kx/c.java:1271: warning: no comment
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                 ^
Generating docs/kx/c.Second.html...
src/kx/c.java:349: warning: no comment
    public Second(int x){
           ^
Generating docs/kx/c.Timespan.html...
src/kx/c.java:374: warning: no comment
    public Timespan(long x){
           ^

Openjdk7 build errors - 'illegal start of type'

Can change/fix then or document that only subsequent java versions are supported.

Add openjdk7 to .travis.yml jdk section & trigger build job in travis (or just use docker image or java 7 install):
Building gives these errors:

[0K$ java -Xmx32m -version
java version "1.7.0_151"
OpenJDK Runtime Environment (IcedTea 2.6.11) (7u151-2.6.11-2ubuntu0.14.04.1)
OpenJDK 64-Bit Server VM (build 24.151-b01, mixed mode)
$ javac -J-Xmx32m -version
javac 1.7.0_151
travis_time:start:07d6f092
[0K$ make
mkdir -p build/classes
javac -d build/classes src/kx/c.java src/kx/examples/Feed.java src/kx/examples/QueryResponse.java src/kx/examples/Subscriber.java src/kx/examples/Server.java src/kx/examples/TypesMapping.java src/kx/examples/GridViewer.java
src/kx/c.java:1271: error: illegal start of type
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
    ^
src/kx/c.java:1271: error: = expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
            ^
src/kx/c.java:1271: error: ';' expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                ^
src/kx/c.java:1271: error: illegal start of type
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                           ^
src/kx/c.java:1271: error: = expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                              ^
src/kx/c.java:1271: error: illegal start of type
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                               ^
src/kx/c.java:1271: error: <identifier> expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                                ^
src/kx/c.java:1271: error: = expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                                     ^
src/kx/c.java:1271: error: = expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                                                    ^
src/kx/c.java:1271: error: illegal start of type
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                                                       ^
src/kx/c.java:1271: error: <identifier> expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                                                        ^
src/kx/c.java:1271: error: = expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                                                               ^
src/kx/c.java:1271: error: ';' expected
    default void processMsg(c c,byte msgType,Object msg)throws IOException{
                                                                          ^
src/kx/c.java:1272: error: illegal start of type
      switch(msgType){
      ^
src/kx/c.java:1272: error: <identifier> expected
      switch(msgType){
            ^
src/kx/c.java:1272: error: = expected
      switch(msgType){
             ^
src/kx/c.java:1272: error: ';' expected
      switch(msgType){
                    ^
src/kx/c.java:1272: error: illegal start of type
      switch(msgType){
                     ^
src/kx/c.java:1272: error: <identifier> expected
      switch(msgType){
                      ^
src/kx/c.java:1273: error: = expected
        case 0:System.err.println("discarded unexpected incoming async msg!");break; // implicitly discard incoming async messages
             ^
src/kx/c.java:1273: error: ';' expected
        case 0:System.err.println("discarded unexpected incoming async msg!");break; // implicitly discard incoming async messages
              ^
src/kx/c.java:1273: error: <identifier> expected
        case 0:System.err.println("discarded unexpected incoming async msg!");break; // implicitly discard incoming async messages
                                 ^
src/kx/c.java:1273: error: illegal start of type
        case 0:System.err.println("discarded unexpected incoming async msg!");break; // implicitly discard incoming async messages
                                  ^
src/kx/c.java:1273: error: illegal start of type
        case 0:System.err.println("discarded unexpected incoming async msg!");break; // implicitly discard incoming async messages
                                                                              ^
src/kx/c.java:1273: error: = expected
        case 0:System.err.println("discarded unexpected incoming async msg!");break; // implicitly discard incoming async messages
                                                                                   ^
src/kx/c.java:1273: error: ';' expected
        case 0:System.err.println("discarded unexpected incoming async msg!");break; // implicitly discard incoming async messages
                                                                                    ^
src/kx/c.java:1274: error: illegal start of type
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
             ^
src/kx/c.java:1274: error: <identifier> expected
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
              ^
src/kx/c.java:1274: error: = expected
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
               ^
src/kx/c.java:1274: error: ';' expected
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
                ^
src/kx/c.java:1274: error: <identifier> expected
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
                   ^
src/kx/c.java:1274: error: illegal start of type
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
                    ^
src/kx/c.java:1274: error: illegal start of type
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
                                                       ^
src/kx/c.java:1274: error: = expected
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
                                                            ^
src/kx/c.java:1274: error: ';' expected
        case 1:c.ke("unable to process sync requests");break; // signal to remote that we're unable to process these by default
                                                             ^
src/kx/c.java:1275: error: illegal start of type
        default:throw new IOException("Invalid message type received: "+msgType);
               ^
src/kx/c.java:1275: error: <identifier> expected
        default:throw new IOException("Invalid message type received: "+msgType);
                ^
src/kx/c.java:1275: error: = expected
        default:throw new IOException("Invalid message type received: "+msgType);
                      ^
src/kx/c.java:1275: error: ';' expected
        default:throw new IOException("Invalid message type received: "+msgType);
                         ^
src/kx/c.java:1275: error: illegal start of type
        default:throw new IOException("Invalid message type received: "+msgType);
                                     ^
src/kx/c.java:1275: error: <identifier> expected
        default:throw new IOException("Invalid message type received: "+msgType);
                                      ^
src/kx/c.java:1275: error: = expected
        default:throw new IOException("Invalid message type received: "+msgType);
                                                                       ^
src/kx/c.java:1275: error: ';' expected
        default:throw new IOException("Invalid message type received: "+msgType);
                                                                        ^
src/kx/c.java:1275: error: illegal start of type
        default:throw new IOException("Invalid message type received: "+msgType);
                                                                               ^
src/kx/c.java:1275: error: <identifier> expected
        default:throw new IOException("Invalid message type received: "+msgType);
                                                                                ^
src/kx/c.java:1276: error: = expected
      }
      ^
src/kx/c.java:1276: error: ';' expected
      }

Loosing details of received objects

As a user of c.java, I want to be able to fully understand what object I get from k(). At the moment I can't distinguish strings (char vectors) from functions; primitive, adverbs (iterators) are fully swallowed (I got func without any idea what was sent).

My view that it looks better to have a separate class-wrapper for every K type which would keep the structure of what read from socket.

java.time.*

Hello,

is there any plan to replace these deprecated types :

import java.util.date;
import java.sql.Date;
import java.sql.Time;
import java.sql.Timestamp;

https://www.baeldung.com/java-8-date-time-intro

Current Java types Proposed Java 8 types
java.sql.Date java.time.LocalDate
java.sql.Time java.time.LocalTime
java.sql.Timestamp java.time.Instant
java.util.Date java.time.LocalDateTime

The main concern with the current old java type is the fact the epoch is altered to show the UTC date/time with the local hidden time zone from java.util.date.

`long getTzOffset(long x){
return tz.getOffset(x);
}

long lg(long x){
return x+getTzOffset(x);
}
long gl(long x){
return x-getTzOffset(x-getTzOffset(x));
}`

so you cannot use java.util.Date.toInstant() to get the accurate epoch.

I created a pull request to show how that could work : #57

Best Regards,

Patrice

JavaDoc for setCollectResponseAsync

Method 'setCollectResponseAsync'
Could expand the javadoc details on what this does - current associated doc with method doesnt go into much detail.
Only if you read the doc associated with 'java.lang.Object k(java.lang.Object x)' does setCollectResponseAsync make sense, as it refers to the other method i.e. "If the caller has already indicated via setCollectResponseAsync that the response message will be read async..."

Potential to remove or depreciate O/tm/t methods

Methods not documented on website, but appear in user generated JavaDocs. Appear to be for mainly API dev rather than a feature of the API. I was initially confused of their purpose till I read through the src, so may confuse new users of the API/KDB as to their need in communicating with KDB.

Rather than remove, it may also be an idea to do a intrim release with them marked as depreciated for anything that happens to be using them currently.

Ref:
'O' methods (prints passed param to stdout)
'tm' - no documentation - print difference in milliseconds
't' - only called by 'tm'

https://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/deprecation/deprecation.html
Example:

  /**
   * @deprecated Previously wrapper for System.currentTimeMillis(). Not used by KDB+ interface.
   * @return current time in millis.
   */
  @Deprecated public static long t(){
    return System.currentTimeMillis();
  }

Bad README formatting of Feed example

Pre-requisite on feed example is getting displayed as one line - making it hard to see its an example of creating func & table.
q).u.upd:{[tbl;row] inserttbl} q)mytable:([]time:timespan$();sym:symbol$();price:float$();size:long$()

ClassCastException on reading splay table

The bug is inside c.java which parses the result from kdb.

If you run GridViewer with the following query

String query ="get `:test/ set ([] a:til 10)";

then you get the following exception

Dec 07, 2020 10:04:00 PM kx.examples.GridViewer main
SEVERE: null
java.lang.ClassCastException: java.lang.String cannot be cast to [Ljava.lang.Object;
	at kx.c$Flip.<init>(c.java:479)
	at kx.c.r(c.java:977)
	at kx.c.deserialize(c.java:1395)
	at kx.c.readMsg(c.java:1522)
	at kx.c.k(c.java:1602)
	at kx.c.k(c.java:1617)
	at kx.examples.GridViewer.main(GridViewer.java:48)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.