Ayende @ Rahien

Ayende @ Rahien

Oren Eini aka Ayende Rahien CEO of Hibernating Rhinos LTD, which develops RavenDB, a NoSQL Open Source Document Database.

Get in touch with me:

oren@ravendb.net

+972 52-548-6969

Posts: 7,339 | Comments: 50,706

Copyright ©️ Ayende Rahien 2004 — 2022

Privacy Policy Terms
filter by tags archive
stack view grid view
  • architecture (529) rss
  • bugs (419) rss
  • challanges (103) rss
  • community (336) rss
  • databases (410) rss
  • design (834) rss
  • development (541) rss
  • hibernating-practices (57) rss
  • miscellaneous (589) rss
  • performance (351) rss
  • programming (1024) rss
  • raven (1308) rss
  • ravendb.net (365) rss
  • reviews (181) rss
  • uberprof (40) rss
  • 2022
    • July (1)
    • June (12)
    • May (9)
    • April (14)
    • March (15)
    • February (13)
    • January (16)
  • 2021
    • December (23)
    • November (20)
    • October (16)
    • September (6)
    • August (16)
    • July (11)
    • June (16)
    • May (4)
    • April (10)
    • March (11)
    • February (15)
    • January (14)
  • 2020
    • December (10)
    • November (13)
    • October (15)
    • September (6)
    • August (9)
    • July (9)
    • June (17)
    • May (15)
    • April (14)
    • March (21)
    • February (16)
    • January (13)
  • 2019
    • December (17)
    • November (14)
    • October (16)
    • September (10)
    • August (8)
    • July (16)
    • June (11)
    • May (13)
    • April (18)
    • March (12)
    • February (19)
    • January (23)
  • 2018
    • December (15)
    • November (14)
    • October (19)
    • September (18)
    • August (23)
    • July (20)
    • June (20)
    • May (23)
    • April (15)
    • March (23)
    • February (19)
    • January (23)
  • 2017
    • December (21)
    • November (24)
    • October (22)
    • September (21)
    • August (23)
    • July (21)
    • June (24)
    • May (21)
    • April (21)
    • March (23)
    • February (20)
    • January (23)
  • 2016
    • December (17)
    • November (18)
    • October (22)
    • September (18)
    • August (23)
    • July (22)
    • June (17)
    • May (24)
    • April (16)
    • March (16)
    • February (21)
    • January (21)
  • 2015
    • December (5)
    • November (10)
    • October (9)
    • September (17)
    • August (20)
    • July (17)
    • June (4)
    • May (12)
    • April (9)
    • March (8)
    • February (25)
    • January (17)
  • 2014
    • December (22)
    • November (19)
    • October (21)
    • September (37)
    • August (24)
    • July (23)
    • June (13)
    • May (19)
    • April (24)
    • March (23)
    • February (21)
    • January (24)
  • 2013
    • December (23)
    • November (29)
    • October (27)
    • September (26)
    • August (24)
    • July (24)
    • June (23)
    • May (25)
    • April (26)
    • March (24)
    • February (24)
    • January (21)
  • 2012
    • December (19)
    • November (22)
    • October (27)
    • September (24)
    • August (30)
    • July (23)
    • June (25)
    • May (23)
    • April (25)
    • March (25)
    • February (28)
    • January (24)
  • 2011
    • December (17)
    • November (14)
    • October (24)
    • September (28)
    • August (27)
    • July (30)
    • June (19)
    • May (16)
    • April (30)
    • March (23)
    • February (11)
    • January (26)
  • 2010
    • December (29)
    • November (28)
    • October (35)
    • September (33)
    • August (44)
    • July (17)
    • June (20)
    • May (53)
    • April (29)
    • March (35)
    • February (33)
    • January (36)
  • 2009
    • December (37)
    • November (35)
    • October (53)
    • September (60)
    • August (66)
    • July (29)
    • June (24)
    • May (52)
    • April (63)
    • March (35)
    • February (53)
    • January (50)
  • 2008
    • December (58)
    • November (65)
    • October (46)
    • September (48)
    • August (96)
    • July (87)
    • June (45)
    • May (51)
    • April (52)
    • March (70)
    • February (43)
    • January (49)
  • 2007
    • December (100)
    • November (52)
    • October (109)
    • September (68)
    • August (80)
    • July (56)
    • June (150)
    • May (115)
    • April (73)
    • March (124)
    • February (102)
    • January (68)
  • 2006
    • December (95)
    • November (53)
    • October (120)
    • September (57)
    • August (88)
    • July (54)
    • June (103)
    • May (89)
    • April (84)
    • March (143)
    • February (78)
    • January (64)
  • 2005
    • December (70)
    • November (97)
    • October (91)
    • September (61)
    • August (74)
    • July (92)
    • June (100)
    • May (53)
    • April (42)
    • March (41)
    • February (84)
    • January (31)
  • 2004
    • December (49)
    • November (26)
    • October (26)
    • September (6)
    • April (10)
RavenDB Workshops - Deep dive into practical use of Document Data Modeling
  previous post next post  
Jul 01 2008

Guess how I found that out...

time to read 1 min | 11 words

Arrgh!

image

Tweet Share Share 15 comments
Tags:
  • Bugs
  • C#

  previous post next post  

Comments

Yitzchok
01 Jul 2008
04:14 AM
Yitzchok

Interesting catch

Who has the mistake?

Ayende Rahien
01 Jul 2008
04:25 AM
Ayende Rahien

Both can be argued to be correct.

The problem is not that, it is that there is a difference.

Chris Patterson
01 Jul 2008
04:41 AM
Chris Patterson

So now that the source to the CLR is viewable by the public, how does that impact the mono project and future versions I wonder?

Ayende Rahien
01 Jul 2008
04:47 AM
Ayende Rahien

Same as always, if you look at CLR code, please don't contribute to Mono

Simon
01 Jul 2008
05:36 AM
Simon

Mono is correct because it does not use crappy "m_" prefixing for member types. ;)

Scott Hanselman
01 Jul 2008
05:38 AM
Scott Hanselman

Shoot! Now that I've glanced at this post, I can't go fix this bug for you! AARGH! My eyes! ;)

josh
01 Jul 2008
05:47 AM
josh

Maybe you should have put a spoiler warning on this for any mono devs. I wouldn't be surprised if some were among your readers.

Ayende Rahien
01 Jul 2008
05:49 AM
Ayende Rahien

This did not come from the CLR sources. This is a reflector output.

Beside, I frankly doubt that anyone will reveal the secret of PROPERTY GETTERS

josh
01 Jul 2008
05:49 AM
josh

@Hanselmen, don't worry the mono team has an official eye bleach for just this sort of situation.

Stefan Wenig
01 Jul 2008
11:36 AM
Stefan Wenig

gotta get one of those: http://www.youtube.com/watch?v=c7vqvdwkvJk&NR=1

firefly
01 Jul 2008
12:00 PM
firefly

Good catch :) So what does CheckDisposed() do? throw an exception if the object is disposed?

Jarrod M
01 Jul 2008
12:58 PM
Jarrod M

I ran into a few things like this when working with Mainsoft (which uses Mono source to cross compile to java with their compiler).

By the way, what do you use to create your diagrams?

Ayende Rahien
01 Jul 2008
14:04 PM
Ayende Rahien

Firefly,

Yes

Ayende Rahien
01 Jul 2008
14:09 PM
Ayende Rahien

Jarrod,

PowerPoint

MIguel de Icaza
01 Jul 2008
14:30 PM
MIguel de Icaza

We only use m_ names when we are forced by something like remoting (which likes to send reflection-based internal field names across the wire).

Otherwise we stay away from that horrible practice.

Miguel

Comment preview

Comments have been closed on this topic.

Markdown formatting

ESC to close

Markdown turns plain text formatting into fancy HTML formatting.

Phrase Emphasis

*italic*   **bold**
_italic_   __bold__

Links

Inline:

An [example](http://url.com/ "Title")

Reference-style labels (titles are optional):

An [example][id]. Then, anywhere
else in the doc, define the link:
  [id]: http://example.com/  "Title"

Images

Inline (titles are optional):

![alt text](/path/img.jpg "Title")

Reference-style:

![alt text][id]
[id]: /url/to/img.jpg "Title"

Headers

Setext-style:

Header 1
========
Header 2
--------

atx-style (closing #'s are optional):

# Header 1 #
## Header 2 ##
###### Header 6

Lists

Ordered, without paragraphs:

1.  Foo
2.  Bar

Unordered, with paragraphs:

*   A list item.
    With multiple paragraphs.
*   Bar

You can nest them:

*   Abacus
    * answer
*   Bubbles
    1.  bunk
    2.  bupkis
        * BELITTLER
    3. burper
*   Cunning

Blockquotes

> Email-style angle brackets
> are used for blockquotes.
> > And, they can be nested.
> #### Headers in blockquotes
> 
> * You can quote a list.
> * Etc.

Horizontal Rules

Three or more dashes or asterisks:

---
* * *
- - - - 

Manual Line Breaks

End a line with two or more spaces:

Roses are red,   
Violets are blue.

Fenced Code Blocks

Code blocks delimited by 3 or more backticks or tildas:

```
This is a preformatted
code block
```

Header IDs

Set the id of headings with {#<id>} at end of heading line:

## My Heading {#myheading}

Tables

Fruit    |Color
---------|----------
Apples   |Red
Pears	 |Green
Bananas  |Yellow

Definition Lists

Term 1
: Definition 1
Term 2
: Definition 2

Footnotes

Body text with a footnote [^1]
[^1]: Footnote text here

Abbreviations

MDD <- will have title
*[MDD]: MarkdownDeep

 

FUTURE POSTS

No future posts left, oh my!

RECENT SERIES

  1. Challenge (69):
    01 Jul 2022 - Find the stack smash bug… – answer
  2. High performance .NET (6):
    27 Jun 2022 - Building a Redis Clone – skipping strings
  3. re (31):
    02 Jun 2022 - BonsaiDb performance update
  4. Production postmortem (37):
    29 Apr 2022 - Deduplicating replication speed
  5. Recording (3):
    11 Apr 2022 - Clean Architecture with RavenDB
View all series

RECENT COMMENTS

  • The documentation for RuntimeHelpers.EnsureSufficientExecutionStack states: Ensures that the remaining stack space is large e...
    By Adrian on Challenge: Find the stack smash bug… – answer
  • Robert, thats a good example why I insist on intermediary variables. Helps with debugging, too
    By Christian Sauer on Challenge: Find the stack smash bug…
  • Robert, :+1
    By Oren Eini on Challenge: Find the stack smash bug…
  • There is at least a problem in `var sizeInBytes = o.Count / (sizeof(byte) * 8) + o.Count % (sizeof(byte) * 8) == 0 ? 0 : 1;`...
    By Robert on Challenge: Find the stack smash bug…
  • Without an example object to test, I'm going to assume that somehow the compiled code is attempting to optimize the function ...
    By Stuart Turner on Challenge: Find the stack smash bug…

Syndication

Main feed Feed Stats
Comments feed   Comments Feed Stats