Skip to main content

This 1938 photo from the George S. Bolster at The Saratoga History Museum shows the mirror-like structure at 69-71 Caroline Street as Sylmaire, a rooming house.

{From the 2023 Holiday Magazine}

Written by Carol Godette  |  Photos provided (Unless Noted)


A 1999 phone book ad for the cardiologist office at 69 Caroline St.

The basement of 69 Caroline Street consists of many curved brick pathways, holding secrets of the buildings past.

Laura Smith Ellsworth was a well-known medium who at one time resided at 69 Caroline Street.

Alice Martin, Linda Hofmann, Deb Reed, Mary Lou Hall, Reenie Wade, Jan Perotta, Susan Brome and Donna Tomb responded to Margie Shepard’s March 1989 hand-drawn flyer to begin a hands-on museum for children. Their families faced the daunting task of creating a small exhibit in the Downstreet Marketplace. Twenty years later, the overwhelming success led to the museum’s home at 69 Caroline Street.

Haller will keep the fronts of these former popular Children’s Museum attractions

John Haller, owner of 69 Caroline Street, in the future classroom of the Saratoga Joinery.

This planer is one of many professional tools a
woodworking hobbyist can use at the Joinery

This planer is one of many professional tools a
woodworking hobbyist can use at the Joinery

John Haller, owner of 69 Caroline Street, in the future classroom of the Joinery

Today 69 Caroline Street awaits its next transformation as the Saratoga Joinery

Just a short stroll from lively upper Caroline Street, adorned with its vibrant bars and the late-night revelry of intoxicated patrons spilling into the street, lies a well-maintained 1880s brick duplex steeped in a rich historical narrative.

Once a multi-unit apartment building housing both residents and business offices and later transformed into a boarding house, the duplex metamorphosed into an elegant French restaurant. Subsequently, it found purpose as a cardiology office, only to transition into the cherished third home of the Saratoga Children's Museum. And now, it eagerly awaits its forthcoming role as a cooperative woodworking shop, aptly named The Joinery. In its diverse history, 69 Caroline Street has always been a place of discovery.

Within the weathered basement brick and stone walls, this venerable structure conceals an array of tales from yesteryears. The wooden basement beams bear witness to generations that have come and gone. During a recent tour, I wove through the curved brick-lined pathways of the basement, feeling transported to a bygone era where every nook and cranny held secrets waiting to be discovered.

If it were possible to gather the first early residents or building owners who conducted their affairs from the iconic 69 Caroline residence, one would find a constellation of talent. I was surprised to discover the number of owners and residents who were in alternative fields of health care - Mrs. E. A. Cates, magnetic healer and rubbist (1878); Dr. Mary Dewey treated patients there in 1890; Dr. Emma Ayres ran a homeopathic sanitarium (1891) and, in 1904, well-known medium and clairvoyant, Laura Smith Ellsworth saw clients at 69 Caroline.

In the 1930s, Polish immigrant Abraham Weiss discovered he could capitalize on Saratoga’s demand for affordable lodging by converting the building into a rooming house, naming it the Sylmarie, after his daughters Sylvia and Marilyn. (A 1930s directory of Rooming houses lists 44 such establishments, all within blocks of each other.)

In the 1980s, the walls of these furnished bedrooms were knocked down when Joseph and Sophie Parker renovated the downstairs to open their French Restaurant, Chez Sophie, where locals discovered the pleasures of simple, yet elegant, French food made with the freshest of ingredients. The Parkers lived in Hadley, where they began their restaurant, but moved their iconic bistro to Saratoga at 69 Caroline for a brief time. One of the most ardent admirers of their simple yet elegant cuisine was the summer visitor, Alfred G. Vanderbilt, who cherished the restaurant's in-town location, conveniently close to the Saratoga Racetrack.

Joseph completed the magical experience by serving as a welcoming, gracious host.

It may seem ironic that a location renowned for its French cuisine later became the home of Saratoga’s premier cardiologists. Yet, in 1986, when Dr. Andrij Baran and Dr. Roland Phillips founded Saratoga Cardiology, they chose 69 Caroline Street as the home of their newly established practice. In their 14 years there, thousands of patients discovered how to best care for their cardiovascular health, as well as discovering a deep admiration for these award-winning doctors. By 1999 the ever-expanding practice had outgrown the relatively small space.

The next chapter of the building, which lasted 20 years and is the most well-known to date - is the Saratoga Children’s Museum, a unique place of discovery for area children.  Diane Denny often walked by 69 Caroline Street on her way to the library. She knew the popular Children’s Museum, then housed over Palmettos on Phila Street, was searching for a new home, so she proposed the idea to her friend and board member Peggy Brown. Soon a capital campaign began to raise $500,000 for renovations and an addition, expanding the space to 8,000 square feet. The Herculean task kicked off with a "demolition party" on June 21, 2000, to create a "New Children's Museum for the New Century." 

The grand opening on November 10, 2001, delighted hundreds of children and their parents with Saratoga-themed exhibits ready for discovery. Kids danced in the interactive bandstand at Congress Park, operated a working antique cash register in the general store, immersed themselves in a life-sized bubble, and dressed as firemen to respond to the next pretend emergency. The expanded museum thrived for 20 years at this location, drawing over 40,000 visitors a year. On December 31, 2021, the museum closed its doors at 69 Caroline in preparation for moving to a larger location at the Lincoln Bathhouse.

This opened the door for innovator and software start-up developer John Haller, who was ready for his next endeavor. Haller, a pioneer in the desktop mapping industry, co-founded the software company MapInfo (now known as Precisely MapInfo); NearMe, a location-based application for wireless devices; and SportsSignup. 

During the pandemic, Haller discovered his passion for woodworking as he watched craftsmen work on a multi-year renovation of his Queen Anne Victorian home at 73 Union Avenue.  He discovered both woodworking and software development used the same parts of one’s brain, both requiring extensive problem-solving. 

“In 2021, I lived and fully immersed myself in a 3-month furniture intensive at the Center for Furniture Craftsmanship in Rockport, Maine, where I officially became hooked,” said Haller. 

His intrigue with Troy’s “Maker Lab,” a space where hands-on wood crafters can use equipment and share ideas, led him to search for a building to house a similar type of business. He created a building wish list: a place with parking, a ramp, large doors to move in new equipment, and multiple rooms in a walkable in-town location. The former Children’s Museum checked all the boxes.

In March 2022, Haller took possession of 69 Caroline Street, naming it The Saratoga Joinery, a not-for-profit woodworking co-operative. He had hoped to open this fall, but unexpected discoveries one would find in an 1880s building have delayed the opening until this January. Full-time employee James Varkala faces daily challenges, such as remnants of an old chimney or an air handling system that needed changes. Impressed with his efforts, The Saratoga Springs Preservation Foundation presented Haller with an Adaptive Reuse Award this past September for his work on the building.

In the meantime, over 700 people have had membership inquiries. Both monthly memberships and a variety of woodworking classes will be offered. Discoveries await many as 69 Caroline Street continues to craft its story.


Authors Note: 

Thanks to the Saratoga Room and Michelle Isopo,
Mitch Cohen and John Haller for their research help.

8.004MBMemory Usage160msRequest Duration
Joomla! Version4.4.13
PHP Version8.3.21
Identityguest
Response200
Templateyootheme
Database
Server
mysql
Version
8.0.42
Collation
utf8mb3_unicode_ci
Conn Collation
utf8mb4_0900_ai_ci
$_GET
array:3 [ "catid" => "8" "id" => "623" "view" => "article" ]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:74 [ "USER" => "fivetowers" "HOME" => "/home/fivetowers" "SCRIPT_NAME" => "/index.php" ...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1748742400 "last" => 1748742400...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (444.69KB) (4.79ms)
  • afterInitialise (1.96MB) (39.19ms)
  • afterRoute (375.95KB) (6.16ms)
  • beforeRenderComponent com_content (49.2KB) (1.02ms)
  • Before Access::preloadComponents (all components) (47.72KB) (1.86ms)
  • After Access::preloadComponents (all components) (116.7KB) (1.77ms)
  • Before Access::preloadPermissions (com_content) (1.63KB) (15μs)
  • After Access::preloadPermissions (com_content) (514.33KB) (2.09ms)
  • Before Access::getAssetRules (id:794 name:com_content.article.623) (18.65KB) (35μs)
  • After Access::getAssetRules (id:794 name:com_content.article.623) (7.38KB) (126μs)
  • afterRenderComponent com_content (1.65MB) (70.47ms)
  • afterDispatch (29.42KB) (1.38ms)
  • beforeRenderRawModule mod_finder () (366.03KB) (11.12ms)
  • afterRenderRawModule mod_finder () (1.95MB) (8.33ms)
  • beforeRenderModule mod_finder () (704B) (5μs)
  • afterRenderModule mod_finder () (1.44KB) (184μs)
  • beforeRenderRawModule mod_menu () (1.66KB) (202μs)
  • afterRenderRawModule mod_menu () (12.58KB) (798μs)
  • beforeRenderModule mod_menu () (696B) (4μs)
  • afterRenderModule mod_menu () (3.63KB) (102μs)
  • beforeRenderRawModule mod_custom () (920B) (65μs)
  • afterRenderRawModule mod_custom () (320.07KB) (1.22ms)
  • beforeRenderModule mod_custom () (704B) (5μs)
  • afterRenderModule mod_custom () (3.15KB) (81μs)
  • beforeRenderRawModule mod_menu () (24B) (81μs)
  • afterRenderRawModule mod_menu () (552B) (361μs)
  • beforeRenderModule mod_menu () (696B) (3μs)
  • afterRenderModule mod_menu () (2.76KB) (58μs)
  • beforeRenderRawModule mod_custom () (920B) (58μs)
  • afterRenderRawModule mod_custom () (1.03KB) (133μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (1.23KB) (57μs)
  • beforeRenderRawModule mod_menu () (1.8KB) (79μs)
  • afterRenderRawModule mod_menu () (4.45KB) (444μs)
  • beforeRenderModule mod_menu () (696B) (4μs)
  • afterRenderModule mod_menu () (1.34KB) (71μs)
  • beforeRenderRawModule mod_finder () (96B) (8μs)
  • afterRenderRawModule mod_finder () (7.28KB) (547μs)
  • beforeRenderModule mod_finder () (704B) (4μs)
  • afterRenderModule mod_finder () (1.34KB) (77μs)
  • beforeRenderRawModule mod_custom () (288B) (8μs)
  • afterRenderRawModule mod_custom () (912B) (161μs)
  • beforeRenderModule mod_custom () (704B) (3μs)
  • afterRenderModule mod_custom () (1.23KB) (54μs)
  • beforeRenderRawModule mod_custom () (6.27KB) (167μs)
  • afterRenderRawModule mod_custom () (1008B) (124μs)
  • beforeRenderModule mod_custom () (704B) (2μs)
  • afterRenderModule mod_custom () (2.77KB) (45μs)
  • beforeRenderRawModule mod_custom () (472B) (57μs)
  • afterRenderRawModule mod_custom () (1008B) (107μs)
  • beforeRenderModule mod_custom () (704B) (2μs)
  • afterRenderModule mod_custom () (2.43KB) (41μs)
  • afterRender (306.95KB) (4.1ms)
  • 1 x afterRenderComponent com_content (1.65MB) (44.1%)
    70.47ms
    1 x afterInitialise (1.96MB) (24.52%)
    39.19ms
    1 x beforeRenderRawModule mod_finder () (366.03KB) (6.96%)
    11.12ms
    1 x afterRenderRawModule mod_finder () (1.95MB) (5.22%)
    8.33ms
    1 x afterRoute (375.95KB) (3.85%)
    6.16ms
    1 x afterLoad (444.69KB) (3%)
    4.79ms
    1 x afterRender (306.95KB) (2.56%)
    4.10ms
    1 x After Access::preloadPermissions (com_content) (514.33KB) (1.31%)
    2.09ms
    1 x Before Access::preloadComponents (all components) (47.72KB) (1.17%)
    1.86ms
    1 x After Access::preloadComponents (all components) (116.7KB) (1.11%)
    1.77ms
    1 x afterDispatch (29.42KB) (0.86%)
    1.38ms
    1 x afterRenderRawModule mod_custom () (320.07KB) (0.76%)
    1.22ms
    1 x beforeRenderComponent com_content (49.2KB) (0.64%)
    1.02ms
    1 x afterRenderRawModule mod_menu () (12.58KB) (0.5%)
    798μs
    1 x afterRenderRawModule mod_finder () (7.28KB) (0.34%)
    547μs
    1 x afterRenderRawModule mod_menu () (4.45KB) (0.28%)
    444μs
    1 x afterRenderRawModule mod_menu () (552B) (0.23%)
    361μs
    2 x afterRenderRawModule mod_custom () (1008B) (0.14%)
    231μs
    1 x beforeRenderRawModule mod_menu () (1.66KB) (0.13%)
    202μs
    1 x afterRenderModule mod_finder () (1.44KB) (0.12%)
    184μs
    1 x beforeRenderRawModule mod_custom () (6.27KB) (0.1%)
    167μs
    1 x afterRenderRawModule mod_custom () (912B) (0.1%)
    161μs
    1 x afterRenderRawModule mod_custom () (1.03KB) (0.08%)
    133μs
    1 x After Access::getAssetRules (id:794 name:com_content.article.623) (7.38KB) (0.08%)
    126μs
    2 x beforeRenderRawModule mod_custom () (920B) (0.08%)
    123μs
    2 x afterRenderModule mod_custom () (1.23KB) (0.07%)
    111μs
    1 x afterRenderModule mod_menu () (3.63KB) (0.06%)
    102μs
    1 x beforeRenderRawModule mod_menu () (24B) (0.05%)
    81μs
    1 x afterRenderModule mod_custom () (3.15KB) (0.05%)
    81μs
    1 x beforeRenderRawModule mod_menu () (1.8KB) (0.05%)
    79μs
    1 x afterRenderModule mod_finder () (1.34KB) (0.05%)
    77μs
    1 x afterRenderModule mod_menu () (1.34KB) (0.04%)
    71μs
    1 x afterRenderModule mod_menu () (2.76KB) (0.04%)
    58μs
    1 x beforeRenderRawModule mod_custom () (472B) (0.04%)
    57μs
    1 x afterRenderModule mod_custom () (2.77KB) (0.03%)
    45μs
    1 x afterRenderModule mod_custom () (2.43KB) (0.03%)
    41μs
    1 x Before Access::getAssetRules (id:794 name:com_content.article.623) (18.65KB) (0.02%)
    35μs
    1 x Before Access::preloadPermissions (com_content) (1.63KB) (0.01%)
    15μs
    5 x beforeRenderModule mod_custom () (704B) (0.01%)
    15μs
    3 x beforeRenderModule mod_menu () (696B) (0.01%)
    11μs
    2 x beforeRenderModule mod_finder () (704B) (0.01%)
    9μs
    1 x beforeRenderRawModule mod_finder () (96B) (0.01%)
    8μs
    1 x beforeRenderRawModule mod_custom () (288B) (0%)
    8μs
53 statements were executed, 5 of which were duplicates, 48 unique15.68ms868.02KB
  • SELECT @@SESSION.sql_mode;157μs968B/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `jos_session` WHERE `session_id` = ?235μs1008BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = :session_id LIMIT 182μs1.3KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `jos_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)342μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `jos_viewlevels`152μs976B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `jos_usergroups` AS `a` LEFT JOIN `jos_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest259μs1.33KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_k2" AND e.type = "component"226μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_virtuemart" AND e.type = "component"83μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_easyblog" AND e.type = "component"97μs1.13KB/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jomclassifieds" AND e.type = "component"76μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_hikashop" AND e.type = "component"78μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_rseventspro" AND e.type = "component"78μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_zoo" AND e.type = "component"130μs536B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jticketing" AND e.type = "component"95μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_icagenda" AND e.type = "component"79μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_eventbooking" AND e.type = "component"82μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_eshop" AND e.type = "component"75μs1.76KB/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_rsblog" AND e.type = "component"87μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_mijovideos" AND e.type = "component"76μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_opencart" AND e.type = "component"86μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jcart" AND e.type = "component"76μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_djclassifieds" AND e.type = "component"117μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_j2store" AND e.type = "component"77μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_phocacart" AND e.type = "component"90μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_jshopping" AND e.type = "component"83μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_igallery" AND e.type = "component"135μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SELECT e.enabled FROM jos_extensions AS e WHERE e.element = "com_dpcalendar" AND e.type = "component"88μs520B/administrator/components/com_tagz/helpers/tagz.php:890Copy
  • SHOW FULL COLUMNS FROM `jos_tagz_config`845μs1.3KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • SELECT * FROM `jos_tagz_config` WHERE `name` = 'config'99μs592B/libraries/src/Table/Table.php:755Copy
  • SELECT id,template FROM jos_template_styles WHERE client_id=0 AND home=1237μs592B/administrator/components/com_widgetkit/widgetkit.php:28Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yooessentials' AND folder = 'system'147μs536B/plugins/system/yooessentials/helper.php:153Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yooessentials' AND folder = 'system' LIMIT 1116μs536B/plugins/system/yooessentials/modules/platform-joomla/src/Database.php:52Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jos_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39,:preparedArray40,:preparedArray41)622μs9.94KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `jos_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 0653μs49.48KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `jos_content`1.29ms1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `jos_content` SET `hits` = (`hits` + 1) WHERE `id` = '623'406μs48B/libraries/src/Table/Table.php:1325Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `jos_content` AS `a` INNER JOIN `jos_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `jos_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `jos_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `jos_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `jos_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)657μs62.13KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jos_categories` AS `s` INNER JOIN `jos_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`423μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `jos_contentitem_tag_map` AS `m` INNER JOIN `jos_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1,:preparedArray2)302μs3.97KBParams/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jos_categories` AS `s` INNER JOIN `jos_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`330μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM jos_fields AS a LEFT JOIN `jos_languages` AS l ON l.lang_code = a.language LEFT JOIN jos_users AS uc ON uc.id=a.checked_out LEFT JOIN jos_viewlevels AS ag ON ag.id = a.access LEFT JOIN jos_users AS ua ON ua.id = a.created_user_id LEFT JOIN jos_fields_groups AS g ON g.id = a.group_id LEFT JOIN `jos_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2)) AND `a`.`access` IN (:preparedArray3,:preparedArray4)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray5,:preparedArray6)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC461μs4.75KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `a`.`id`,`a`.`title`,`a`.`catid`,`a`.`language`, CASE WHEN CHAR_LENGTH(`a`.`alias`) != 0 THEN CONCAT_WS(':', `a`.`id`, `a`.`alias`) ELSE a.id END AS `slug`, CASE WHEN CHAR_LENGTH(`cc`.`alias`) != 0 THEN CONCAT_WS(':', `cc`.`id`, `cc`.`alias`) ELSE cc.id END AS `catslug` FROM `jos_content` AS `a` LEFT JOIN `jos_categories` AS `cc` ON `cc`.`id` = `a`.`catid` WHERE `a`.`catid` = :catid AND `a`.`state` = :state AND `a`.`access` IN (:preparedArray1,:preparedArray2) AND (`publish_up` IS NULL OR `publish_up` <= :nowDate1) AND (`publish_down` IS NULL OR `publish_down` >= :nowDate2) ORDER BY CASE WHEN `a`.`publish_up` IS NULL THEN `a`.`created` ELSE `a`.`publish_up` END DESC2.48ms3.47KBParams/plugins/content/pagenavigation/src/Extension/PageNavigation.php:188Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `jos_categories` AS `s` INNER JOIN `jos_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`349μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `params` FROM `jos_tagz` WHERE `component_id` = 120 AND `component_type` = "menu"392μs520B/plugins/system/tagz/tagz.php:650Copy
  • SELECT `params` FROM `jos_tagz` WHERE `component_id` = 623 AND `component_type` = "content"124μs520B/plugins/system/tagz/tagz.php:650Copy
  • SELECT `name`,`element` FROM `jos_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1208μs592B/administrator/components/com_finder/src/Helper/LanguageHelper.php:135Copy
  • SELECT `title` FROM `jos_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)222μs584B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT custom_data FROM jos_extensions WHERE element = 'yootheme' AND folder = 'system' LIMIT 1838μs688.52KB/templates/yootheme/packages/platform-joomla/src/Storage.php:30Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM jos_fields AS a LEFT JOIN `jos_languages` AS l ON l.lang_code = a.language LEFT JOIN jos_users AS uc ON uc.id=a.checked_out LEFT JOIN jos_viewlevels AS ag ON ag.id = a.access LEFT JOIN jos_users AS ua ON ua.id = a.created_user_id LEFT JOIN jos_fields_groups AS g ON g.id = a.group_id WHERE ( (`a`.`context` = :context AND `a`.`access` IN (:preparedArray1,:preparedArray2)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray3,:preparedArray4)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC336μs4.06KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `title` FROM `jos_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)136μs584B/administrator/components/com_finder/src/Indexer/Taxonomy.php:314Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `jos_scheduler_tasks` AS `a` WHERE `a`.`state` = 1226μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `session_id` FROM `jos_session` WHERE `session_id` = ?151μs1KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • UPDATE `jos_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?391μs592BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy