Questions and Answers PostgreSQL Client DatabaseEngine


Generic topics

Is the PostgreSQL DatabaseEngine royality free?

Whenever you are using an Xbase++ application connecting to a PostgreSQL server via the PostgreSQL DatabaseEngine (PGDBE) you need a license for that client. However, on a developer maschine the license of the Xbase++ development platform is considered a PostgreSQL client license.

As a developer, do I really need a license?

No, your Xbase++ installation already comes with an unlimited developer license. This is done automatically, the PostgreSQL DatabaseEngine checks if there is an activated development tool product license installed on the developer machine and if so, it does not require any client license.

Since this the developer license is unlimited you can safely use that license to simulate multi user scenarios and workload tests.

I am an inhouse developer, do I need to buy a license for my company users?

No, not necessarily. As an active subscription customer, you can request a client license free of charge via the Alaska Software portal.

What is a client, and how they are counted?

Simply said, a client refers to a connection originating from a particular workstation. For instance, if you have two Xbase++ applications connecting from the same workstation to the PostgreSQL server via PGDBE, they are considered as one client. However, if these connections originate from two distinct workstations, they are counted as two separate clients.

In the case of a terminal server, application server, or microservices, each connection to these services is counted as a client connection.

How long is the client license valid?

The client license is designed to be a yearly subscription which does automatically prolong/renew. Of course, you can cancel your license at any time. This way a renewal will not happen. However, this would also mean you can not install new versions of your application which are based on a newer Xbase++ version at your customer site.

Is the license perpetual?

Yes, it is perpetual. Remember, a perpetual license - client or development tool - refers to a licensing arrangement where a client has the right to use a specific version of the software indefinitely. This means that even if the client cancels or discontinues the subscription, they can continue using the version of the software that was available to them at the time of their subscription termination.

However, it's important to note that perpetual licenses require an active subscription to get access to future updates, enhancements, or newer versions of the software.

When do the new license rules apply?

As of 07/01/2023 the new PostgreSQL Client Database Engine license rules will apply. However we will technically not enfore them now. We will add license verification to one of the future updates only after we have negotiated all the details with our customers.

We currently assume this may take until September. Anyway, in case you feel that the timeframe does not fit into your plans, please let is know. We are here to help you.

Topics for vertical solution developers

What is a license coupon?

We differentiate between a client license and a license coupon. License coupons have a credit of a specific amount of client licenses. The owner of the license coupon will be able to create/issue client licenses via the Alaska Software portal on their own. Assuming you are a vertical solution vendor and you purchased a 500 client credit coupon. Then you can issue one hundred 5 client licenses, or twenty-five 10 client licenses and five 50 client licenses, or any other combination which fits your customer needs.

What is the idea of the coupon system?

Simply put, we didn't want to come between you and your client. By purchasing a license coupon, you, as the developer of a vertical solution, gain the rights to manage a certain number of client licenses independently of Alaska Software. There is no agreement between your end user and Alaska Software. It's just you and your clients, and you have the freedom to define the relationship with your end user yourself. You can ask your clients to pay a monthly fee, or you can provide them with the clients they need based on your existing contracts.

In fact, coupons provide the maximum freedom for you and your company.

Can I void a client license I issued via a license coupon?

Yes, we wanted that our customers have the maximum freedom to decide how they sell the client license to their customers. Consequently, a license coupon owner can not only issue a new license but also void/revoke the licenses. Of course, legally the end-user is then no more allowed to use the client license.

Can I upgrade a license coupon from 500 to 1000 clients?

We do not support that and have no plans to do so. Remember, the client license is a subscription and the license fee is paid on a yearly base. Extending an existing coupon would mix up the lifetime of licenses.

Can I cancel a client license or a license coupon?

Yes, of course, you can cancel a client license or a license coupon at any time.

This means you can still have your application running at your customer site. However, from a licensing point of view, you are not allowed to update the installation to an Xbase++ version released after the end-date of your client license or license coupon subscription.

How can I reinstate a canceled client license or license coupon?

To reinstate a canceled client license or license coupon we will determine the timeframe elapsed since cancellation. This timeframe as well as the current license fees are the basis for the calculation of the re-instatement fee.

Technical details of the Client license

What is client license?

A client license is a license key associated with a company name or an entity name. The license key has the name as well as the maximum amount of Xbase++ clients licensed embedded.

  • License-Key: AWAAY-3ZSTC-TSJXB-7N7ZM-YCNG2
  • Licensee: My-Company
  • Max Clients: 20
How is the license installed?

Technically, each installation of your application using PGDBE requires a license key known to the PostgreSQL DatabaseEngine. The DBE verifies the license key and decides if the connection is allowed. For this reason, the DBE tests from time to time how many unique connections are established by an Xbase++ process.

Applying the client license to your application is simple, you just need to associate the license to your application using the DbeInfo() slot as shown below:

DbeInfo( COMPONENT_DATA, PGDBE_LICENSE, "license-key=AWAAY-3ZSTC-TSJXB-7N7ZM-YCNG2;licensee=My-Company" )

Note: The licensee must match exactly with the licensee provided when the client license was requested. This is important as the licensee's name is embedded in the license key and is verified.

Does the license verification cost performance?

No, we have specially designed the license verification in such a way that after the initial set-license operation the license itself and the client count are tested only sporadically.

Even these sporadic validations will not cost much performance. According to our measurement, it is lesser than 10ms and will take place just sporadically.

Do I need to install the license on the server?

No, we designed the license management in such a way that the license affects only the part you - as the developer - control: your application. We didn't want to compromise/affect existing enterprise or PostgreSQL installation with that mechanism.

That's the reason why we decided to control anything only from the client side.

How long is the license key valid?

At least until your subscription renews.

Alaska Software may reserve the right to change the license key to ensure security. However, this only affects future updates and does not affect your existing deployment. In practice, it could be the case that you need to deploy a new license key at your customer site at the same time you deploy a new version of your application with a new Xbase++ runtime version at your customer site.