Skip to content
SlashDB ver. 1.8

SlashDB version 1.8 is now available for download or for instant launch on Azure and AWS clouds.

This release adds 4 new features and a number of improvements to performance, software developer’s kits, security and documentation.

 

0
New features
0
Enhancements & fixes
0
Automated tests
0%
Test code coverage

What’s new in version 1.8?

Schema (metadata) in JSON and CSV (in addition to XML)

SlashDB is unique in providing database APIs in multiple representations: JSON, XML, CSV and HTML. Until now, the schema or metadata has been supported for XML only. We now have support for JSON and CSV. The user friendly HTML representation is coming soon too.

We are deprecating the .xsd extension in favor of a generic ?schema query string.

For example, this URL leads to the JSON representation of data in the response table in the pystreet database:

https://demo.slashdb.com/db/pystreet/response.json?limit=5

Accordingly, the URL for the schema (metadata) will be:

https://demo.slashdb.com/db/pystreet/response.json?schema

For complete documentation on this feature, please see our User Guide at https://docs.slashdb.com/user-guide/developing-with-slashdb/schemas/

Uniform log format across all components

Like many web service applications, SlashDB’s architecture is layered, using components such as a reverse proxy (by default NGINX) and a web application server (uWSGI). The core application and the third party components all log request activity, which can be helpful in diagnosing any issues or performance monitoring.

From this release on, we configured the log format for each component in the same way. This allows users to concatenate log files from all components for analysis (e.g. to trace the full request lifecycle across all stages). We are also shipping a command line tool for gathering all relevant logs in any given time period.

Here’s how it works:

Screenshot of slashdb-diag tool

For complete command line, options please use –help.

# /opt/slashdb/bin/slashdb-diag --help
Usage: slashdb-diag [OPTIONS] LOG_FILES

  Tool for collecting log files and config files to help with troubleshooting.

  Examples:
  $ slashdb_diag
  Will try to find configs and logs in standard locations
  and will save them in a zip file.

  $ slashdb_diag --ini /path/to/slashdb.ini --nginx-conf /path/to/nginx.conf
  Will get configs and logs based on the paths provided.

  $ slashdb_diag /var/log/slashdb/slashdb.log /var/log/slashdb/uwsgi.log --no-combined --no-zip
  Will get only these two log files and save them in a folder.

  $ slashdb_diag --start 2023-11-17T16:06:10 --end 2023-11-17T17:06:10
  Will get only logs in the given time frame.

Options:
  --ini FILE                   Path to slashdb.ini.
  --nginx-conf FILE            Path to nginx.conf.
  --start [%Y-%m-%dT%H:%M:%S]  Start date of the logs, YYYY-MM-DDTHH:mm:ss
                               format.
  --end [%Y-%m-%dT%H:%M:%S]    End date of the logs, YYYY-MM-DDTHH:mm:ss
                               format.
  --configs / --no-configs     Whether to include config files.  [default:
                               configs]
  --zip / --no-zip             Whether to zip the resulting directory.
                               [default: zip]
  --combined / --no-combined   Whether to combine log files to a single file.
                               [default: combined]
  --help                       Show this message and exit.

Encrypt database credentials

Storing credentials that need to be passed to downstream services is challenging. Encryption is an obvious solution, but the application needs to be able to decrypt them when needed and do that unattended on restart. SlashDB now supports passing the secret key from cloud infrastructure to the instance. Please contact our technical support team for more details on using this capability.

Single Sign-on capability for JavaScript and ReactJS SDK

One of the uses for SlashDB is to provide a data backend to web and mobile applications without doing any coding. Authentication is almost always a critical requirements for such applications. In case you did not know, we have open source SDKs for JavaScript and ReactJS. The SDBClient class has new features to enable single sign on. For technical documentation, please see https://slashdb.github.io/js-slashdb/docs/SlashDBClient.html

For a fully functional interactive application, which showcases how to use SlashDB as a backend, including the single sign-on feature, please visit this GitHub project:

https://github.com/SlashDB/taskapp-demo

What’s improved?

Security

  • Supports encryption of database credentials
  • Prevents sending user’s credentials in HTTP responses
  • Adds optional security headers for controlling browser policies for cross-origin resources
  • Fixed tests for SAML 2.0 when running on local machine
  • Reviewed and fix remaining items from the Netspark test
  • Fixed hostname validation

Performance and Core Functionality

Of note are:

  • Schema generation, including in streaming mode
  • Optional schema validation for posted data
  • Enhanced SlashDB JDK for JS/React with SSO OAuth2 (PKCE)
  • Ensured there is a unique request identifier in logs where possible
  • Fixed problems with GEOGRAPHY type in Microsoft SQL Server
  • Updated Snowflake driver due to end of support
  • Updated Databricks driver
  • Fixed Decimal and Timestamp issues in the new Databricks driver
  • Code refactoring in MySQL driver
  • Fixed a license validation issue
  • Fixed endpoint for database model loading, which could result with unintentional model unload
  • Fixed test connection to include all optional settings
  • Added database type level TDS_VERSION and trust connection settings for MS SQL
  • Fixed JSON rendering of time and timedelta types in SQL Pass-thru
  • Fixed limit/offset use with stored procedures in MySQL

User Experience

Various fixes and feature improvements including:

  • Allows clicking to filter on cells which contain only spaces
  • Normalized error codes related to features that are not implemented in certain contexts
  • Displays warning when user could remove a privilege to a query from themselves
  • Displays warning about duplicate email when viewing user definition
  • Fixed checkbox rules in the Administrative Privileges section of the user configuration screen
  • Allows copying of SQL Pass-thru query for users with permission to see the query definition
  • Fixed hyperlinks for download
  • Fixed filtering links on NULL value
  • Fixed minor display anomaly for single column results with empty cells
  • Fixed display of values with curly braces

Documentation, Dev/Ops and Testing

  • Made Azure distribution compatible with Trusted Launch
  • Rewrote instructions for installation on AWS
  • Automated about 75% of UI tests
  • Updated documentation on slashdb.ini settings, schema
  • Code cleanup and refactoring
  • Automatically clean up docker images after test runs
  • Deprecated URL substitution feature

Connect with us

We invite you to get in touch with us. You can reach us via:

About the image

AI generated by Microsoft Bing powered by DALL-E with manual modifications in GIMP.

Back To Top