Dr Stuart Myers

Ganglion 

Ganglions = Cysts are very common swellings (lumps) that sometimes grow in the hand and wrist. 

These cysts are not malignant (cancerous).

                   

It is a sack of fluid arising from the wrist capsule or wrist ligaments.
Occasionally it will appear after minor trauma to the hand.


Ganglions in the hand occur in 4 characteristic sites:

1. Dorsal wrist - the back of the wrist,

                


2. Volar wrist - palm / thumb side of the wrist

 


3. Mucous cyst - the end joint of a finger associated with arthritis & may cause finger nail deformity or ridging

 


4. Flexor sheath ganglion -base of a finger arising from the sheath around the tendons.

 


Ganglion cysts usually arise from adjacent joint linings or tendon sheaths.
Although there is usually no specific cause for ganglions, there may have been an injury before the appearance of a cyst. These cysts can be painful, especially when they first appear and with constant or strenuous use of the hand. Ganglions may fluctuate in size and may disappear spontaneously.

DIAGNOSIS


The diagnosis of a ganglion cyst is usually based on where the cyst is and what it looks like.
Dr Myers may recommend x-rays to rule out problems in nearby joints or extension of the ganglion into the bone.
An ultrasound may confirm the diagnosis when a ganglion is very small. Often no tests are required.

 

TREATMENT


1. Observation - some ganglions resolve spontaneously

2. Hit it with a Bible! (not recommended)


3. Injection with cortisone & bursting or draining the ganglion. Not very effective for wrist ganglions but is of use particularly for flexor sheath ganglions


4. Wrist brace (OAPL) - obtained from my secretary


5. Surgery

- Indicated if the cyst is painful, limits activity, or its appearance is unacceptable & other treatments have failed

- Aim to remove not only the cyst but also the stalk & a small flap of the capsule or ligament from which the ganglion is arising

- Is generally performed in hospital as a day only procedure.


Surgery for Wrist Ganglions


1. Dorsal wrist

 


- after the operation the wrist is in a splint for a few days & then the wrist can be exercised
- often bending the wrist forward is limited for a few months following the surgery but usually returns with time

- the major problem with this surgery is that approximately 10% of ganglions recur following resection


2. Volar Wrist:

- issues are similar to dorsal ganglions but in addition:
- the Radial artery often runs over the ganglion & must be carefully preserved
- A small nerve branch to the base of thumb region is very close to the scar & can be irritated with this surgery - scar massage after the operation may be required


3. Mucous cysts:

- the DIP or end joint of a finger is commonly affected by osteoarthritis. The ganglion or cyst forms secondary to the arthritis
- may cause finger nail deformity or ridging due to pressure on the nail bed

       

 

 

- excision of mucous cysts requires not only excision of the cyst & stalk but also the entire back capsule of the DIP joint & any loose pieces of bone or spurs on the back of the joint
- Recurrence rate also ~ 10%

 

LAST UPDATED ON 28 / 2 / 15

10.381MBMemory Usage176msRequest Duration
Joomla! Version4.4.12
PHP Version8.2.18
Identityguest
Response200
Templatert_studius
Database
Server
mysql
Version
5.7.23-23
Collation
utf8_general_ci
Conn Collation
utf8mb4_general_ci
$_GET
[]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:76 [ "LSPHP_ENABLE_USER_INI" => "on" "PATH" => "/usr/local/bin:/usr/bin:/bin" "TEMP" => ...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1747487667 "last" => 1747487667...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:18 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (471.43KB) (2.76ms)
  • afterInitialise (1.08MB) (22.07ms)
  • afterRoute (1.13MB) (12.76ms)
  • beforeRenderComponent com_content (42.02KB) (1.35ms)
  • Before Access::preloadComponents (all components) (62.81KB) (2.65ms)
  • After Access::preloadComponents (all components) (115.78KB) (1.38ms)
  • Before Access::preloadPermissions (com_content) (1.7KB) (20μs)
  • After Access::preloadPermissions (com_content) (416.46KB) (1.96ms)
  • Before Access::getAssetRules (id:192 name:com_content.article.87) (18.65KB) (54μs)
  • After Access::getAssetRules (id:192 name:com_content.article.87) (7.47KB) (120μs)
  • afterRenderComponent com_content (896.55KB) (25.24ms)
  • afterDispatch (2.91KB) (149μs)
  • beforeRenderRawModule mod_custom (Responsive Logo) (3.43MB) (63.89ms)
  • afterRenderRawModule mod_custom (Responsive Logo) (4.4KB) (844μs)
  • beforeRenderModule mod_custom (Responsive Logo) (720B) (12μs)
  • afterRenderModule mod_custom (Responsive Logo) (2.8KB) (154μs)
  • afterRender (1.11MB) (39.71ms)
  • 1 x beforeRenderRawModule mod_custom (Responsive Logo) (3.43MB) (36.26%)
    63.89ms
    1 x afterRender (1.11MB) (22.53%)
    39.71ms
    1 x afterRenderComponent com_content (896.55KB) (14.32%)
    25.24ms
    1 x afterInitialise (1.08MB) (12.52%)
    22.07ms
    1 x afterRoute (1.13MB) (7.24%)
    12.76ms
    1 x afterLoad (471.43KB) (1.57%)
    2.76ms
    1 x Before Access::preloadComponents (all components) (62.81KB) (1.5%)
    2.65ms
    1 x After Access::preloadPermissions (com_content) (416.46KB) (1.11%)
    1.96ms
    1 x After Access::preloadComponents (all components) (115.78KB) (0.78%)
    1.38ms
    1 x beforeRenderComponent com_content (42.02KB) (0.77%)
    1.35ms
    1 x afterRenderRawModule mod_custom (Responsive Logo) (4.4KB) (0.48%)
    844μs
    1 x afterRenderModule mod_custom (Responsive Logo) (2.8KB) (0.09%)
    154μs
    1 x afterDispatch (2.91KB) (0.08%)
    149μs
    1 x After Access::getAssetRules (id:192 name:com_content.article.87) (7.47KB) (0.07%)
    120μs
    1 x Before Access::getAssetRules (id:192 name:com_content.article.87) (18.65KB) (0.03%)
    54μs
    1 x Before Access::preloadPermissions (com_content) (1.7KB) (0.01%)
    20μs
    1 x beforeRenderModule mod_custom (Responsive Logo) (720B) (0.01%)
    12μs
27 statements were executed, 2 of which were duplicates, 25 unique15.16ms616.75KB
  • SELECT @@SESSION.sql_mode;99μs968B/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:334Copy
  • SELECT `data` FROM `romby_session` WHERE `session_id` = ?123μs1008BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:261Copy
  • SELECT `session_id` FROM `romby_session` WHERE `session_id` = :session_id LIMIT 190μs1.3KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `romby_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)211μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `extension_id` AS `id`,`element` AS `option`,`params`,`enabled` FROM `romby_extensions` WHERE `type` = 'component' AND `state` = 0 AND `enabled` = 1317μs1.73KB/libraries/src/Component/ComponentHelper.php:399Copy
  • SELECT `id`,`rules` FROM `romby_viewlevels`108μs656B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `romby_usergroups` AS `a` LEFT JOIN `romby_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest166μs1.33KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `folder` AS `type`,`element` AS `name`,`params` AS `params`,`extension_id` AS `id` FROM `romby_extensions` WHERE `enabled` = 1 AND `type` = 'plugin' AND `state` IN (0,1) AND `access` IN (:preparedArray1,:preparedArray2) ORDER BY `ordering`961μs4.48KBParams/libraries/src/Plugin/PluginHelper.php:294Copy
  • SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component` FROM `romby_menu` AS `m` LEFT JOIN `romby_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id` WHERE ( (`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :currentDate1)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :currentDate2) ORDER BY `m`.`lft`3.31ms443.92KBParams/libraries/src/Menu/SiteMenu.php:166Copy
  • SELECT `id`,`home`,`template`,`s`.`params`,`inheritable`,`parent` FROM `romby_template_styles` AS `s` LEFT JOIN `romby_extensions` AS `e` ON `e`.`element` = `s`.`template` AND `e`.`type` = 'template' AND `e`.`client_id` = `s`.`client_id` WHERE `s`.`client_id` = 0 AND `e`.`enabled` = 1271μs864B/administrator/components/com_templates/src/Model/StyleModel.php:773Copy
  • SELECT s.id, s.template, s.home, s.title AS long_title, s.params FROM romby_template_styles AS s WHERE s.client_id = 0 AND s.template = 'rt_studius' ORDER BY s.id239μs784B/libraries/gantry5/src/classes/Gantry/Joomla/StyleHelper.php:69Copy
  • SELECT * FROM `romby_languages` WHERE `published` = 1 ORDER BY `ordering` ASC220μs1.59KB/libraries/src/Language/LanguageHelper.php:142Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `romby_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,:preparedArray42,:preparedArray43)736μs7.81KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `romby_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 01.08ms61.48KBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `romby_content`735μs1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:625Copy
  • UPDATE `romby_content` SET `hits` = (`hits` + 1) WHERE `id` = '87'345μ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 `romby_content` AS `a` INNER JOIN `romby_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `romby_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `romby_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `romby_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `romby_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)470μs23.38KBParams/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 `romby_categories` AS `s` INNER JOIN `romby_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`708μs3.94KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `romby_contentitem_tag_map` AS `m` INNER JOIN `romby_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)292μs19.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 `romby_categories` AS `s` INNER JOIN `romby_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`635μs3.94KBParams/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 romby_fields AS a LEFT JOIN `romby_languages` AS l ON l.lang_code = a.language LEFT JOIN romby_users AS uc ON uc.id=a.checked_out LEFT JOIN romby_viewlevels AS ag ON ag.id = a.access LEFT JOIN romby_users AS ua ON ua.id = a.created_user_id LEFT JOIN romby_fields_groups AS g ON g.id = a.group_id LEFT JOIN `romby_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,:preparedArray3,:preparedArray4)) AND `a`.`access` IN (:preparedArray5,:preparedArray6)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray7,:preparedArray8)) 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 ASC608μs4.81KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:166Copy
  • SELECT `a`.`menutype`,`a`.`title` FROM `romby_menu_types` AS `a` WHERE `a`.`client_id` = 0133μs592B/libraries/gantry5/src/classes/Gantry/Framework/Menu.php:138Copy
  • SELECT m.id, m.alias, m.path AS route, m.level, m.parent_id FROM romby_menu AS m WHERE m.menutype = 'mainmenu' AND m.parent_id > 0 AND m.client_id = 0 AND m.published >= 0 ORDER BY m.lft1.91ms24.73KB/libraries/gantry5/src/classes/Gantry/Framework/Menu.php:791Copy
  • SELECT `m`.`id`,`m`.`title`,`m`.`module`,`m`.`position`,`m`.`content`,`m`.`showtitle`,`m`.`params`,`mm`.`menuid` FROM `romby_modules` AS `m` LEFT JOIN `romby_modules_menu` AS `mm` ON `mm`.`moduleid` = `m`.`id` LEFT JOIN `romby_extensions` AS `e` ON `e`.`element` = `m`.`module` AND `e`.`client_id` = `m`.`client_id` WHERE ( ( (`m`.`published` = 1 AND `e`.`enabled` = 1 AND `m`.`client_id` = :clientId AND `m`.`access` IN (:preparedArray1,:preparedArray2)) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :publishUp)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :publishDown)) AND (`mm`.`menuid` = :itemId OR `mm`.`menuid` <= 0) ORDER BY `m`.`position`,`m`.`ordering`802μs1.89KBParams/libraries/src/Cache/Controller/CallbackController.php:51Copy
  • 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 `romby_scheduler_tasks` AS `a` WHERE `a`.`state` = 1193μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy
  • SELECT `session_id` FROM `romby_session` WHERE `session_id` = ?171μs1KBParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:291Copy
  • UPDATE `romby_session` SET `data` = ? , `time` = ? WHERE `session_id` = ?227μs592BParams/libraries/vendor/joomla/session/src/Handler/DatabaseHandler.php:318Copy