BloGroonga

2020-01-07

Groonga 9.1.1 has been released

Groonga 9.1.1 has been released!

How to install: Install

Changes

Here are important changes in this release:

  • load Added support for Apache Arrow format data.

    • If we use Apache Arrow format data, we may reduce parse cost. Therefore, data might be loading faster than other formats.
    • Groonga can also directly input data for Apache Arrow format from other data analysis systems by this improvement.
    • However, Apache Arrow format can use in the HTTP interface only. We can't use it in the command line interface.
  • load Improve error message.

    • Response of load command includes error message also.
    • If we faile data load, Groonga output error detail of load command as below by this Improvement.
    table_create Memos TABLE_NO_KEY
    [[0,0.0,0.0],true]
    column_create Memos content COLUMN_SCALAR Text
    [[0,0.0,0.0],true]
    load --table Memos
    [
    {"content": "Groonga is fast"}
    ]
    [[0,0.0,0.0],1]
    load --table Memos
    [
    {"_id": "invalid", "content": "Mroonga is fast"}
    ]
    [[[-22,0.0,0.0],"<_id>: failed to cast to <UInt32>: <\"invalid\">"],0]
    
    • If we want to output multiple error messages, we use output_errors option of command_version 3 as below.
    table_create Memos TABLE_NO_KEY
    [[0,0.0,0.0],true]
    column_create Memos content COLUMN_SCALAR Text
    [[0,0.0,0.0],true]
    load --table Memos --command_version 3 --output_errors yes
    [
    {"_id": "invalid", "content": "Groonga is fast"},
    {"_id": "invalid", "content": "Mroonga is fast"}
    ]
    {
      "header":{
        "return_code":-22,
        "start_time":1576717803.408522,
        "elapsed_time":0.8798723220825195,
        "error":{
          "message":"<_id>: failed to cast to <UInt32>: <\"invalid\">",
          "function":"parse_id_value",
          "file":"load.c","line":394
        }
      },
      "body":{
        "n_loaded_records":0,
        "errors":[
          {
            "return_code":-22,
            "message":"<_id>: failed to cast to <UInt32>: <\"invalid\">"
          },
          {
            "return_code":-22,
            "message":"<_id>: failed to cast to <UInt32>: <\"invalid\">"
          }
        ]
      }
    }
    
  • [httpd] Updated bundled nginx to 1.17.7.

  • Groonga HTTP server Added support for sending command parameters by body of HTTP request.

    • We must set application/x-www-form-urlencoded to Content-Type for this case.
    • If we use the HTTP POST request, we can specify multiple parameters as below by the HTTP request body.
    POST /d/status HTTP/1.1
    Host: 127.0.0.1:10041
    Content-Length: 35
    Content-Type: application/x-www-form-urlencoded
    
    command_version=3&output_pretty=yes
    

Conclusion

See Release 9.1.1 2020-01-07 about detailed changes since 9.1.0

Let's search by Groonga!