Foglight® for Sybase 5.9.3.10
Developed and tested for Foglight Management Server 5.7.5.x or higher
Release Notes
September 2018
Welcome to Foglight for Sybase
Resolved issues and enhancements
Getting started with Foglight for Sybase
The Cartridge for Sybase enables Foglight to monitor Sybase database systems. The cartridge monitors database resource utilization for capacity planning, problem determination, and trend analysis, in both real-time and historical time.
These Release Notes cover the resolved issues, known issues, workarounds, and other important information about the 5.9.3.10 release of Foglight for Sybase. Review all sections before starting the installation.
This release contains the following new features or enhancements.
This release features a new, Java-based architecture for the Cartridge for Sybase. This change provides deployment enhancements for Remote Monitoring including the support for all the Operating Systems, which are supported by the Foglight Agent Manager.
The following is a list of issues addressed and enhancements implemented in this release.
Defect ID |
Resolved Issue |
SDB-839 |
Allow support in encryption database mode, the DB agent now supports Sybase when Encryption is enabled on the database. |
SYFOG-13 |
The stored procedure installation script detected the Sybase version using the Emergency Bug Fix (EBF) number instead of the Sybase Service Pack. This resulted in stored procedures for some versions of Sybase not compiling correctly, yielding empty dashboards. |
SYFOG-14 |
The User Blocked stored procedure was not functioning correctly. |
SYFOG-15 |
The Sybase_RS Agent dashboards were not correctly displaying device usage data from the Sybase_MDA Agent. |
SYFOG-16 |
Error information specific to the Sybase database version was being incorrectly displayed. |
SYFOG-17 |
After clearing user block information, the information was also cleared from the 1 hour viewing period. |
SYFOG-18 |
The default value for DatabaseErrorLogDetails was changed. |
SYFOG-35 |
Add charset field in ASP, so connection from the DB agent to the database can take place if special charset (as Chinese) is needed. |
SYFOG-36 |
Added seconds to milliseconds measurement to the Sybase Benchmark times collection. |
SYFOG-39 |
Sybase_RS agent can now perform in Linux environment, and reads interfaces file. |
SYFOG-40 |
UserBlocked collection sometimes fails after instance stop/start. |
SYFOG-41 |
The agent falls back to IP if the hostname it connects to fails to respond. |
The following is a list of issues known to exist at the time of this release.
Defect ID |
Known Issue |
CR-0231424 |
The RS_ConnectionStatus rule does not trigger an alarm, even when the rule conditions are met. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
CR-0230497 |
Latency and Synchronizing Servers. Invalid latency values reported in the RS_Latency table. Workaround: In order to report accurate latency values, all Replication Servers, Primary, and Replicate data servers within an ID server domain must be synchronized. |
CR-0230496 |
The RS_PartitionStatus rule does not auto clear after the partition is reset from Offline to Online. Workaround: This rule event must be manually cleared because we do not report partition online statuses which could possibly result in a data overload within the Foglight database. |
CR-0168297 |
Memory leak on Windows platform. Workaround: This is a Sybase Open Client API issue and a case is currently open with Sybase. |
CR-0130361 |
The Sybase_RS agent does not launch on AIX 5.2. Workaround: Since the Sybase_RS agent has the ability to perform most of its monitoring remotely, implement the following workaround:
Note: Since the Sybase_RS agent is monitoring the Sybase replication server remotely, the tables related to the replication server error log (RS_ErrorlogDetail and RS_ErrorlogSummary) do not post any data. |
PR-069037 |
Some of the graphical views display incorrect view legends. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
PR-068923 |
The '/n' character appears in the RS_ErrorLogMsg rule message. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
PR-068260 |
Unusual table names appear in the Data Browser view for the Sybase_RS agent. The RS_ThreadSummary and RS_PartitionSpaceUsedTrend table names should be listed as the table name followed by the identity columns. Only their identity columns appear in the table’s hierarchy. For example, the RS_PartitionSpaceUsedTrend table should be listed as: RS_PartitionSpaceUsedTrend /apps/sybase/sybase1253/data/sq2 104 sq2 /apps/sybase/. Instead, this table is listed as:/apps/sybase/sybase1253/data/sq2 104 sq2 /apps/sybase/. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
PR-063860 |
The agent properties do not display the Agent/DCM versions after the agent starts successfully. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
PR-063489 |
The RS_Latency table does not display a negative value properly. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
PR-036588 |
The RS_Latency_Graph view has an incomplete view label. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
SDB-353 SDB-352 |
On the Databases dashboard, the Up Since and Workload Info columns are not populated for Sybase_RS agent entries. That is because the Sybase_RS agent is not a database monitoring agent. This is expected behavior. |
Defect ID |
Known Issue |
CR-0231209 |
Received exception: position beyond end of string from BenchMarkTimes. Workaround: There is currently no workaround for this issue. |
CR-0231189 |
UsersBlocking view shows incorrect data. Workaround: There is currently no workaround for this issue. |
CR-0231131 |
Data for UsersBlocked view gets displayed in UsersBlocking view. Workaround: There is currently no workaround for this issue. |
CR-0230878 |
The SYBM_ASE_Availability view does not show the name of the Sybase server. Workaround: There is currently no workaround for this issue. |
CR-0230847 |
The Agent Version and Stored Procedures Version fields are blank. Workaround: There is currently no workaround for this issue. |
CR-0230645 |
The agent parameter Exclusion list name is not the same as in Foglight 4. Workaround: There is currently no workaround for this issue. |
CR-0230598 |
The Sybase_MDA agent does not work on Windows. The agent has trouble automatically running the rapsinstall2*.sql scripts under Foglight 5 due to the use of a relative directory path name. Workaround: To work around this, manually run rapsinstall2.sql for any monitored ASE and then manually run rapsinstall2_ase15.sql for any ASE of version 15.X. This is applicable to Windows 2000 and Windows 2003 only. For example, to manually run rapsinstall2.sql: c: c:\>cd Program files\Quest Software\Foglight c:\> Program files\Quest Software\Foglight> cd config\Sybase\scripts...> isql -Usa -P<Password> -S<SERVERNAME> -i .\rapsinstall2.sql -o rapsinstall2_out.txt If the ASE of interest is version 15.X, also do this: ...> isql -Usa -P<Password> -S<SERVERNAME> -i .\rapsinstall2_ase15.sql -o rapsinstall2_ase15_out.txt |
CR-0230499 |
The RS_Latency_Graph view has an incomplete view label. Workaround: Expected Sybase behavior. |
CR-0203573 |
There are an excessive number of messages in the Foglight Management Server log. If the Sybase_MDA agent attempts to collect from a database where the user does not have a login or permission to access the data, then an error message will be written to the client log file with details on how to resolve the issue. If the agent continues running without the user permission level being modified, this results in several messages being written to the client FMS log file each collection cycle. Workaround: There is currently no workaround for this issue. It will be fixed in a future server release. |
CR-0147037 |
The EngineSummary Table shows intermittent negative values for cpu_busy_pct. Workaround: There is currently no workaround for this issue. |
PR-070213 |
Two similar views, SYBM_DbSpaceTrendBar and
YBM_DiskSpaceTrendBar, do not show data. |
PR-070055 |
The Cache_Efficiency Rule does not have a property
named dcache_name. |
PR-070038 |
The view list includes an extra database name in
some of the views. |
SDB-414 |
Excluding databases can only be done by populating
the Exclude DBs list manually in the Sybase_MDA agent
properties. |
Defect ID |
Known Issue |
N/A |
Roles mechanism. To view the new Sybase dashboards, a user must have the minimum privileges of:
To activate or deactivate agents from the Sybase dashboards, the user must have Foglight administrator privileges. Workaround: There is currently no workaround for this issue. It will be fixed in a future release. |
N/A |
On the Top Activity dashboard, SQL Details tab, long SQL statements are displayed across multiple table rows. Workaround: There is currently no workaround for this issue. It will be fixed in a future release. |
N/A |
When creating a new agent, the Server Configuration collection and Space Trending collection are updated only after one hour (until then, data is not available). Workaround: There is currently no workaround for this issue. It will be fixed in a future release. |
SDB-407 | Sybase reports are only be accessible by those Foglight users whose accounts include the Sybase Admin role. |
Defect ID |
Known Issue |
n/a |
Due to architectural changes in the Cartridge for Sybase 5.9.3.10, legacy cartridge versions cannot be upgraded to version 5.9.3.10. Workaround: You may install the new Sybase cartridge on the same FMS instance as the old cartridge. The new Sybase cartridge must use a different FglAM than the legacy cartridge. Both FglAMs may be installed on the same FMS. |
Before installing Foglight for Sybase, ensure your system meets the following minimum hardware and software requirements:
The Foglight Cartridge for Sybase must be installed onto an already running Foglight Management Server, and requires that the Foglight Agent Manager be installed on all the hosts that you want to monitor.
To learn about the system requirements for these components, refer to the Foglight Release Notes and Foglight System Requirements and Platform Support Guide.
For the hardware requirements of Foglight Cartridge for Sybase, refer to the Supported Platforms table.
For the Foglight Management Server hardware requirements, refer to the Foglight System Requirements and Platform Support Guide.
For the Foglight Cartridge for Sybase 5.9.3.10 to operate properly, the Foglight Management Server must be running 5.7.5. The Foglight Agent Manager (FglAM) must be version 5.7.0.
Recommended Sybase Configuration
The values below are minimum requirements for the given parameters:
Value | Requirement |
sp_configure 'number of locks' | 50000 |
sp_configure 'number of open objects' | 2500 |
sp_configure 'number of open indexes' | 1500 |
sp_configure 'number of open partitions' | 1000 |
sp_configure 'permission cache entries' | 50 |
Version 5.9.3.10 allows remote monitoring, hence Supported Platforms are the same as the FglAM supported platform list. Refer to the Foglight System Requirements and Platform Support Guide for the supported platforms.
Foglight includes a licensing capability that restricts access to those features that are defined in the license. Any Management Server installation requires a license that grants access to server-specific parts of the browser interface and the features associated with them. Foglight cartridges are also license-protected. While some cartridges are covered by the base Foglight license (such as Foglight Agent Manager cartridges and the Foglight for Infrastructure), others may require an additional license.
Foglight for Sybase is covered by the base Foglight license that allows cartridges to be installed.
To activate a trial or a purchased commercial license:
The Foglight Cartridge for Sybase release package contains the following:
Sybase cartridges former to 5.7.5.40 cannot be upgraded to the current Sybase cartridge version (5.9.10.3).
Workaround: You may install the new Sybase cartridge on the same FMS instance as the old cartridge. The new Sybase cartridge must use a different FglAM than the legacy cartridge, as well as new Sybase user account.
To maintain cartridge history, do not remove the legacy cartridge: From the same reasons as mentioned above, the history in the legacy cartridge is not accessible from the new cartridge. Also, as mentioned in the Workaround above, both legacy and new Sybase cartridges can be installed side by side. Hence legacy History will be available via the legacy cartridge.
Same Sybase instance can be monitored by both Legacy Sybase agent and new Sybase agent (5.9.10.3), if unique FglAM and unique Sybase user account is used for each account.
Sybase cartridge 5.9.10.3 does not require Sybase Open Client to be installed.
After installing the cartridge, update the Sybase account for Foglight by manually downloading and running the scripts "DB_Sybase_FirstRun_Scripts" located under Foglight > Dashboards > Administration > Agents > Cartridges > Components for Download .
isql -Usa -Ppassword -SserverName -i rapsAdmin.sql -o rapsAdmin.out
2017-08-13 17:15:31.336 INFO [FglAM:IncomingMessage[5]-111] com.quest.glue.core.agent.AgentInstance - Created agent
2017-08-13 17:15:31.336 VERBOSE [FglAM:IncomingMessage[5]-111] com.quest.glue.core.agent.AgentInstance - Starting data collection
2017-08-13 17:15:31.336 INFO [FglAM:IncomingMessage[5]-111] com.quest.qsi.fason.core.agent.AbstractAgent - Sybase 16 new2 entering startDataCollection()
2017-08-13 17:15:31.337 INFO [FglAM:IncomingMessage[5]-111] com.quest.foglight.sybase.common.connection.SybaseConnectionPool - Successfully loaded Sybase driver com.sybase.jdbc4.jdbc.SybDriver
2017-08-13 17:15:31.338 INFO [FglAM:IncomingMessage[5]-111] com.quest.glue.core.agent.AgentInstance - Started data collection
2017-08-13 17:15:31.391 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.common.agent.SybaseCollectionsSharedData - DB connect availability was changed from null to true
2017-08-13 17:15:31.427 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.SybaseVersionInfoProcessor - Set DB version to 16.0
2017-08-13 17:15:31.427 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.SybaseVersionInfoProcessor - Set EBF to 22385
2017-08-13 17:15:31.428 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.SybaseVersionInfoProcessor - Set cluster to false
2017-08-13 17:15:31.428 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.SybaseVersionInfoProcessor - Full version - Adaptive Server Enterprise/16.0/EBF 22385 SMP/P/X64/Windows Server/asecepheus/3530/64-bit/FBO/Sun Feb 16 06:52:50 2014
2017-08-13 17:15:31.441 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.GetVersionProcessor - DB Version 16000000
2017-08-13 17:15:31.460 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.SybaseQuestDBInfoProcessor - Use quest DB true
2017-08-13 17:15:31.516 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.StoreProceduresVersionInfoProcessor - The agent stored procedures detected in the monitored DB belong to version= 5.7.5.92.
2017-08-13 17:15:31.545 INFO [Sybase 16 new2-highPriorityPool-1] com.quest.foglight.sybase.mda.collection.processor.startup.InitServerIsLocalProcessor - Set local server to false
2017-08-02 13:45:45.871 ERROR [FRT21_1503_42-lowPriorityPool-3-[SybaseServerStatus][2017/08/02 13:45:43]] com.quest.foglight.sybase.mda.collection.processor.startup.InstallSpProcessor - Error while running SP script
if exists (select 1
from sysobjects
where sysstat & 7 = 4 and uid = user_id()
and name = 'sp_fgl_version')
begin
After installing the Cartridge for Sybase, perform the configuration steps below:
To create a new Sybase user:
exec sp_addlogin 'username' , 'password' , sybsystemprocs
exec sp_fgl_adduser 'username' , 'foglightGroup'
The first pre-requisite is that the Sybase_MDA feature be installed on the respective ASE. This feature is not automatically installed on all versions of Sybase ASE. A check the DBA can run is the query: “select * from master..monState”.
If the monitoring tables are not installed in your Adaptive Server (12.5.1 or later), have the Sybase DBA for the respective ASE follow the steps to install the tables listed in the Addendum at the end of this section.
For versions 15.x, there is no need for loopback and installmontables.
The Sybase_MDA feature has numerous parameters to both turn on and turn off specific metrics and determine the amount of memory the ASE will set aside for these metrics.
Performance monitoring how has the ability to enable the user to set the per_object_statistics flag to off.
Callback collections require communication between the Foglight Management Server and the Sybase server. Ensure that the port used by the Sybase host server is open between the Sybase host and the Foglight Management Server.
The Sybase login defined in the Foglight agent property for the respective agent must have the “mon_role” assigned. This is also applicable to the ‘sa’ login.
Command to execute via ISQL or other client tool:
grant role mon_roleto_<logon_name>
The Sybase_RS agent requires separate common logins to be created for the Replication Server, the RSSD data server, the Primary data server, and the Replicate data server.
Note: Refer to the Sybase_RS "Setting Connection Details" topic in the Managing Sybase Database Systems online help for more information.
If the monitoring tables are not installed in your Adaptive Server (12.5.1 or subsequent release), have the Sybase DBA for the respective ASE follow these steps to install the tables.
First, a server named “loopback” must be included in sysservers before installing the scripts for the MDA tables. Proxy tables for the monitoring tables are not created by default when you configure Adaptive Server. The tables are created in the second step using the installmontables script that is included in the Adaptive Server install (located in the $SYBASE/ASE-12_5/scripts directory).
sp_addserver 'loopback', null, <ASE server name> go
isql –Usa –P<sa password> -S<server name> -n –i%SYBASE%/%SYBASE_ASE%/scripts/installmontables
Sybase_MDA agent requires the following configuration for it to run correctly
and gather the specified data for the Foglight Management Server.
The values
shown for the following parameters are the minimum required values that the
Foglight Cartridge for Sybase 5.9.3.10 needs for proper data collection and
reporting. Any of these parameter values could be increased if necessary. (You
can copy, paste, and execute the following script into an ISQL or other client
session.)
sp_configure "statement cache size" <size_of_cache> go sp_configure "errorlog pipe max messages",1000 go sp_configure "max SQL text monitored",256 go sp_configure "sql text pipe max messages",3000 go sp_configure "statement pipe max messages",3000 go -- Flags sp_configure "enable stmt cache monitoring" , 1 go sp_configure "enable literal autoparam" [0|1] go sp_configure "enable monitoring", 1 go sp_configure "sql text pipe active", 1 go sp_configure "errorlog pipe active", 1 go sp_configure "per object statistics active",1 go sp_configure "statement statistics active",1 go sp_configure "statement pipe active",1 go sp_configure "wait event timing",1 go sp_configure "SQL batch capture",1 go sp_configure "process wait events",1 go
The following tables list proprietary Sybase flags and the Sybase_MDA agent tables dependent upon them. If any of the settings do not have values that fall in the recommended value range, data collection will issue complaints and fail to successfully collect; indicating that some MDA table collection was canceled as a result of the flags being set incorrectly. To prevent these alerts from occurring, use the appropriate Data Management properties to disable the collection that is failing to collect. Below is a listing of Sybase_MDA agent tables and the configuration settings they depend on:
Foglight Table |
Sybase MonTable (MDA) Configuration Settings |
TopHash |
enable stmt cache monitoring = 1 statement cache size = size_of_cache enable literal autoparam = 0 or 1 Note: Setting enable literal autoparam to 0 causes Sybase to treat each SQL statement separately; setting it to 1 produces bind variables for each search argument in an SQL statement. |
TopSQL |
enable monitoring = 1 |
UsersBlocked |
enable monitoring = 1 |
UsersLogCache |
enable monitoring = 1 |
TopApplications |
enable monitoring = 1 |
Index |
enable monitoring = 1 |
TopUsers |
enable monitoring = 1 |
Additional information is available from the following:
This section contains information about installing and operating this product in non-English configurations, such as those needed by customers outside of North America. This section does not replace the materials about supported platforms and configurations found elsewhere in the product documentation.
This release is Unicode-enabled and supports any character set. In this release, all product components should be configured to use the same or compatible character encodings and should be installed to use the same locale and regional options. This release is targeted to support operations in the following regions: North America, Western Europe and Latin America, Central and Eastern Europe.
This release has the following known capabilities or limitations: The server will be enabled for Global Operation, but not localized to any particular locale.
We are on a quest to make your information technology work harder for you. That is why we build community-driven software solutions that help you spend less time on IT administration and more time on business innovation. We help you modernize your data center, get you to the cloud quicker and provide the expertise, security and accessibility you need to grow your data-driven business. Combined with Quest’s invitation to the global community to be a part of its innovation, and our firm commitment to ensuring customer satisfaction, we continue to deliver solutions that have a real impact on our customers today and leave a legacy we are proud of. We are challenging the status quo by transforming into a new software company. And as your partner, we work tirelessly to make sure your information technology is designed for you and by you. This is our mission, and we are in this together. Welcome to a new Quest. You are invited to Join the Innovation™.
Our logo reflects our story: innovation, community and support. An important part of this story begins with the letter Q. It is a perfect circle, representing our commitment to technological precision and strength. The space in the Q itself symbolizes our need to add the missing piece — you — to the community, to the new Quest.
For sales or other inquiries, visit https://www.quest.com/company/contact-us.aspx/.
Technical support is available to Quest customers with a valid maintenance contract and customers who have trial versions. You can access the Quest Support Portal at https://support.quest.com.
The Support Portal provides self-help tools you can use to solve problems quickly and independently, 24 hours a day, 365 days a year. The Support Portal enables you to:
Quest, the Quest logo, Foglight, and Join the Innovation are trademarks and registered trademarks of Quest Software Inc. in the U.S.A. and other countries. For a complete list of Quest Software trademarks, please visit our website at www.quest.com/legal. Red Hat, JBoss, the JBoss logo, and Red Hat Enterprise Linux are registered trademarks of Red Hat, Inc. in the U.S. and other countries. CentOS is a trademark of Red Hat, Inc. in the U.S. and other countries. Fedora and the Infinity design logo are trademarks of Red Hat, Inc. Microsoft, .NET, Active Directory, Internet Explorer, Hyper-V, Office 365, SharePoint, Silverlight,SQL Server, Visual Basic, Windows, Windows Vista and Windows Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. AIX, IBM, PowerPC, PowerVM, and WebSphere are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Java, Oracle, Oracle Solaris, PeopleSoft, Siebel, Sun, WebLogic, and ZFS are trademarks or registered trademarks of Oracle and/or its affiliates in the United States and other countries. SPARC is a registered trademark of SPARC International, Inc. in the United States and other countries. Products bearing the SPARC trademarks are based on an architecture developed by Oracle Corporation. OpenLDAP is a registered trademark of the OpenLDAP Foundation. HP is a registered trademark that belongs to HewlettPackard Development Company, L.P. Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. MySQL is a registered trademark of MySQL AB in the United States, the European Union and other countries. Novell and eDirectory are registered trademarks of Novell, Inc., in the United States and other countries. VMware, ESX, ESXi, vSphere, vCenter, vMotion, and vCloud Director are registered trademarks or trademarks of VMware, Inc. in the United States and/or other jurisdictions. Sybase is a registered trademark of Sybase, Inc. The X Window System and UNIX are registered trademarks of The Open Group. Mozilla and Firefox are registered trademarks of the Mozilla Foundation. IOS is a registered trademark or trademark of Cisco Systems, Inc. and/or its affiliates in the United States and certain other countries. Apple, iPad, iPhone, Mac OS, Safari, Swift, and Xcode are trademarks of Apple Inc., registered in the U.S. and other countries. Ubuntu is a registered trademark of Canonical Ltd. Symantec and Veritas are trademarks or registered trademarks of Symantec Corporation or its affiliates in the U.S. and other countries. OpenSUSE, SUSE, and YAST are registered trademarks of SUSE LCC in the United States and other countries. Citrix, AppFlow, NetScaler, XenApp, and XenDesktop are trademarks of Citrix Systems, Inc. and/or one or more of its subsidiaries, and may be registered in the United States Patent and Trademark Office and in other countries. PostgreSQL is a registered trademark of the PostgreSQL Global Development Group. MariaDB is a trademark or registered trademark of MariaDB Corporation Ab in the European Union and United States of America and/or other countries. Intel, Itanium, Pentium, and Xeon are trademarks of Intel Corporation in the U.S. and/or other countries. Debian is a registered trademark of Software in the Public Interest, Inc. OpenStack is a trademark of the OpenStack Foundation. Amazon Web Services, the "Powered by Amazon Web Services" logo, and "Amazon RDS" are trademarks of Amazon.com, Inc. or its affiliates in the United States and/or other countries. Infobright, Infobright Community Edition and Infobright Enterprise Edition are trademarks of Infobright Inc. POLYCOM®, RealPresence® Collaboration Server, and RMX® are registered trademarks of Polycom, Inc. All other marks and names mentioned herein may be trademarks of their respective companies.