go to post Robert Cemper · Jan 10, 2019 My interpretation of th eerror message is:The JDBCdriver gets a request that it doesn't understand for a some reason but doesnt uncover the details.The issue is to my understanding sowher in the Java part outside Caché.I'd suggest to contact WRC as the know how to trace this and also understand the results.
go to post Robert Cemper · Jan 7, 2019 You are right: LNX distrib + Win Distrib were the same build.As far I remember from the version string "2018.1.1.643.0 " only "2018.1.1" is important.And also the container should have $ZV to verify (No idea what's in there actually )
go to post Robert Cemper · Jan 7, 2019 Hi Wolf,I ran into a similar problem a few weeks ago: IRIS on Linux - no studioMy solution: Custom install on my local WIN10 desktop. Only the Studio (and ODBC drivers).Nice side effect: the new IRIS-Studio also talks seamlessly to my local Caché. My assumption: As it works for an isolated Linux it should work for Docker as well (if no firewall blocks you )
go to post Robert Cemper · Jan 4, 2019 HIVE docs on String Types shows me:STRINGVARCHAR (Note: Only available starting with Hive 0.12.0)CHAR (Note: Only available starting with Hive 0.13.0andVarcharVarchar types are created with a length specifier (between 1 and 65535), which defines the maximum number of characters allowed in the character string. If a string value being converted/assigned to a varchar value exceeds the length specifier, the string is silently truncated. Character length is determined by the number of code points contained by the character string.Related to your ERROR that tells us that STRING has no size limit => it is a STREAM in our terms. So if you don't convert a STRING to VARCHAR [ preferable VARCHAR(255) ] you won't be able to use an alphanumeric IDYou may, of course, add some artificial numbering of type BIGINT to be used as ID.In any case, just with data type STRING I'd call this a rather a text file than an SQL usable table.Without touching the original source you may need to write your own loader:reading the HIVE "table" sequentially row by rowinsert it into a manually designed table/class with automatic id
go to post Robert Cemper · Jan 3, 2019 Using UUID is a .save way to have a UNIQUE Key.And Open by Key is a stable way for access. BUT be warned: replacing the default ID means locking you out from Bitmap indexing.This might not be an issue with modestly sized tables. With larger ones it may kill your query performance
go to post Robert Cemper · Jan 2, 2019 After exercising this you may start to analyze how to run asynchronous web sockets also without additional JS stuff.see more Using WebSockets (RFC 6455)
go to post Robert Cemper · Jan 2, 2019 Jour problem is that morder**....js is not found in your CSP library structures.Better start with the official example in namespace SAMPLES: Class Web.SocketTest Extends %CSP.WebSocketThat one is really useful to start
go to post Robert Cemper · Dec 27, 2018 I'm not sure if this is the question but I think"*.data.*" could be covered by ?.E1".data.".E eventually instead of .E somewhat limited by .AN or .ANP"Sample.*" could become ?1"Sample.".E Same for .ANP as above
go to post Robert Cemper · Dec 24, 2018 And also in Unix/Linux. It's important that the agents of all participants can talk to each other. (I just was hit by a misconfigured firewall)
go to post Robert Cemper · Dec 24, 2018 - Also check if ISCAgent is active running.- next check if you can have a network connection between both mirror menbers(e.g accessing Mgmt Portal from Primary to Backup und and reverse)
go to post Robert Cemper · Dec 21, 2018 Hi Scott,I don't have an example, just an idea.The best engine for javaScript is node.js.You may execute your JS with node.js on command line (over $ZF or a CommandPipe) and collect the result yourself orby Using Node.js with Caché. with direct object access.I've seen something here: Might be a quick hack.
go to post Robert Cemper · Dec 20, 2018 Thanks Salva!A real Xmas posting! For me. I like it!Regards and best wishes, Robert
go to post Robert Cemper · Dec 20, 2018 the error message indicates that you try ECP access to a Mirror DBNot all mirror configurations allow ECP access - the difference is read/write access and synch/async mirrorusing a virtual IP address adds another level of complexityCheck your config against these rules: Configuring ECP Connections to a MirrorThe graphics in Mirroring may help to identify your situation.
go to post Robert Cemper · Dec 19, 2018 To connect a Caché DB on a diffe3rnt serve use ECPFor other SQL DBs but also (Caché) see Using the Caché SQL Gateway
go to post Robert Cemper · Dec 19, 2018 2 main options. $ZDATE Function offers a broad range of date presentations and conversionsSystem.SQL* contains most popular SQL based Date functions asDATEDATEADDDATEDIFFDATENAMEDATEPARTDAYNAMEDAYOFMONTHDAYOFWEEKDAYOFYEARLASTDAYMONTHMONTHNAMEQUARTERTOCHARTODATETOTIMESTAMPWEEKYEAR
go to post Robert Cemper · Dec 19, 2018 Within a persistent class you have also a Storage definition describing the structure of the stored data.In addition access code for SQL projection is generated during the compile process.Using Inspector in Caché Studio you will find a bunch of SQL specific parameters to control the presentation of your class and properties.The whole model of describing Objects + SQL tables is known as Unified Data Architecture.This link tells you more Objects, SQL, and the Unified Data Architecture
go to post Robert Cemper · Dec 18, 2018 Your snip out from the full WSDL uses XML references s0: and s1:similar to <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://tempuri.org"xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://tempuri.org">In addition I'm somewhat surprised to see in your operation <input message="s0:myOperationSoapIn"/> <output message="s0:myOperationSoapOut"/> <fault message="s0:MyFault" name="MyFault"/>This means you have 1 input msg but 2 different output msg.If you see the Caché side- input triggers a ClassMethod- it returns something or returns an errorI'm not aware of some default logic to return a fault message that is generated.Typically Success/Failure is signaled as part of the output message. As a consequence manual modification of the generated code could be required to splitthe return message into 2 different message types. It's of cause some guessing behind as you didn't publish the full WSDL.
go to post Robert Cemper · Dec 17, 2018 If the definition you get with ?WSDL contains already the missing parts, thenIt may have been changed since your SOAP service in Caché was generated.You just generate your SOAP service with a different class name again using the new WSDL an theneither- use the new set of classesor- check the differences to your actual services. And adapt it manually.I'd assume it isn't much more than a property or a serial class. No magic.
go to post Robert Cemper · Dec 13, 2018 This indicates that GROUP BY is to slow to answer in time.If the selectivity of field1 is very low this may take quite a while.The closer field1 is to unique the longer it takes as it produces a large resultset.You may allow a longer timeout. But pls. don't ask me how. Some other experts may know. If your GCT.PA_Data is a huge thing you may slice it into pieces by year, id, ... whatever seems useful:Example:SELECT field1 F1, count(field2) CntF2FROM ( SELECT filed1,field2 from GCT.PA_Data where field1 is not null and ID between 1 and 100000) group by field1This is not the final solution but a way to understand the limits of your server.BTW:an index on field1 might be useful anyhowExampleIndex ff on field1 [ DATA = filed2 ] ;with this construct, your query will only access this special indexinstead of the full record and NULL fields are all grouped in advance.It is kind of a "materialized view" that other DBs offer.