1. Bugzilla. This one is an oldie but still good. It's what I think of as a developer-oriented tracking system. I'd use this in a heartbeat, but I do find it rather complex for small projects or groups. http://www.bugzilla.org/
PROS: extremely customizable; very stable when run on Linux; lots of reporting; highly queryable; the price (Free) is right; pre-canned reports in Bugzilla 3 are quite nice; good tie-ins with automated test systems; web-based
CONS: lots of fields make it intimidating to non-engineering users; not so stable when run on Windows; ain't exactly pretty
2. Lighthouse. This is a relatively new defect tracking system. It's draw is simplicity. Overall I wouldn't recommend this one. http://www.lighthouseapp.com/
PROS: very easy and intuitive for end-users; email to a bug is very well done; web-based; pretty; ASP-hosted for those who don't like to administer this stuff; tagging idea rather than categorization is nicely flexible
CONS: not yet stable (especially for IE users it breaks a lot); very little reporting; searching is non-intuitive; ASP-hosted for those who are uncomfortable with that notion
3. Jira. This defect tracking system is starting to pop up all over the place. In general it's a compromise system that combines simplicity with some decent reporting. http://www.atlassian.com/software/jira/
PROS: lots of reporting for those in a metrics-heavy environment; quite stable; fairly customizable for end-users
CONS: not free (I think about $5000 for an enterprise license); searching is non-trivial
4. Homegrown. This has happened a couple of times, in which companies use defect tracking systems that they made themselves. Unless your product is a defect tracking or ticketing system this is something I would avoid. Maintaining it becomes a huge pain very quickly.
* Of course there aren't eleventy-zillion. But there are a lot.