Saturday, January 30, 2010

House boats in Gods Own Country


 

http://greatbackwaters.com/ The new Site by Kerala Tourism.

Print

Print

Print

Kerala is better known as gods own country.

The search for a house boat is tough, add to it the several 100's of google search results the equation just got tougher, add to it the several different branding that each company promotes their offering with the equation seems to be getting out of hand, add to it the facilities provided by different companies, add to it the various reviews on the net and you would had gifted yourself a big problem that most of the super computers would find hard to crack.

Coming to the search of house boats, I am going to add my experiences booking a house boat and am yet to experience the final outcome. Infact my study has ticked off a few travel agencies in kerala and my cubicle mate even went to the extent of saying that I could take this up as a PHd Study.



Usual timing
Pick up 12 in the morning and drop 9 on the next day

Routes
I was looking at the Alleppy, Kumarakom routes.

What I learnt
People say Kumarakom - Kumarakom route has wide lakes( breadth) so you would be in the middle of the lake just seeing vast shorelines lined with coconut trees.
Kumarakom - Alleppey - You would see the vast shorelines in the day time and the narrow shores and canals by the night or by the morning.
Hence I decided to do the Alleppey - Kumarakom - see the narrow canals and pass through villages by the morning and then land up in Kumarakom next day morning. Am sure the sunrise would be cool in the vast shorelines.

Rating of boats by the Government
1) Platinum or green
2) Gold
3) Silver

Rating of boats by Boat companies
1) Premium / Super Deluxe / AC 24 hrs
2) Deluxe / AC Night time
3) Normal / Non AC

If you are going with a family category 2 from each group would be good, if you are friends and don't mind slightly lower luxury go for 3).

Common Facilities
1) 2-3 Men (cook, pilot and one maybe for security)
2) Attached toilets
3) Lunch - Non veg
4) Evening tiffin and Tea
5) Dinner - Non veg
6) Breakfast

Types and capacity of boats
1) 1 Bed room smallest
2) 1-5 bedroom range

Usual modus operandi
They pick you up at say Alleppey at 12 then lunch shortly and then they set sail, you can ask them to stop at places of interest and then around 5 - 5: 30 they set anchor and start to park their boat close to the shore (the government of Kerala doesn't allow tourist activity in the waters after 6 so that the tourist activity doesn't affect the fishermen). You can go around and then get back. Dinner is served...time to sleep....wake up for a beautiful sunrise...breakfast....travel and get off at Kumarakom.

Best Rates to Expect - (for a 1 bedroom house boat)
1) Premium / Super Deluxe / AC 24 hrs - 8000 - 15000 INR
2) Deluxe / AC Night time - 5500 - 8000 INR
3) Normal / Non AC - 4000 - 5000 INR

Few companies (disclaimer am not promoting any of these companies, please choose at your own risk)
Reference site
http://www.karmakerala.com/kerala-hotels/kerala-houseboats/houseboat-companies.html

http://www.pulickattil.com/packages.html
8500/- per night for Alleppey- Alleppey. ( A/c will be switch on 7pm to 6am only)
For Kumarrakom - alleppey charging extra Rs.500/- on the above rate.

http://www.riverandcountry.com/
one bedroom Dlx Ac houseboat for Kumarakom - Alleppey overnight cruise during February will be Rs.8,000.00

http://www.welcomecruise.com

http://www.peacockholidays.com
AC Gold Star Houseboat (01 Bed Room) : Rs.7000 /Couple (they use http://www.cheravallyhouseboats.com)

http://www.kumarakomhouseboat.com
15000

http://www.rainbowcruises.in
Rate : A/C Deluxe – Alleppey - Alleppey: Rs. 8000 + 2.58 % service tax = 8206/- nett
A/C Premium: Rs. 9500 + 2.58 % service tax = 9745/- nett
Non A/C Deluxe: Rs. 6500 + 2.58 % service tax = 6668/- nett

http://somahouseboats.com

http://www.cghearth.com/spice_coast_cruises/index.htm#
The per day rate will be Rs. 21650/- per night

http://www.evergreen-kerala.com
Rs.7, 000/- Net. It is a golden category House Boat conforming to the specifications of Tourism Department. It is a Deluxe AC, Golden Category one.

http://www.guardianhouseboat.com/index.html
Type of booking; 01Bed A/C House Boat House Boat Cost ; 6000/

http://www.lakelandscruise.com - 1
Super luxury(Equivalent to GOLD) Rs.12500/-
Luxury Rs.10500/-
Deluxe Rs.8500/- (two months early booking got me this for a rate of 6.5)

http://www.lakeslagoons.com

http://www.chrisoncruise.com
6000

http://www.marvelcruise.com/

http://www.keralahouseboatvoyages.com/index.html

http://www.atdcalleppey.com/index.html
One is a/c deluxe Houseboat The rate will be Rs.9000 + 15 % tax we can offer a special rate Rs.6500/-
Another one is Premium Category Houseboat The rate will be Rs 13,000 + 15 % tax We can offer a special rate Rs.10,000/-

http://www.cheravallyhouseboats.com
7000

Nanni Houseboats
A/c silver category houseboat: 9500 ( A/c works only during the night )
A/C gold category houseboat : 11500 ( A/C works full time )

Desiretours
5800 ac deluxe boat

Green Palace
Net rate : Rs. 9000.00

INDRAPRASTHAM CRUISE
Our best Reta one bed room A/c house boat Rs 6000/-with all meals deluxe boat.

My recommendations (based on my interactions by email and their official correspondences and websites and reviews from the net) (again disclaimer - pls check for yourself, am not responsible for anything)
1) http://www.lakelandscruise.com
2) http://www.kumarakomhouseboat.com
3) http://www.peacockholidays.com


Kerala is a lovely place to visit, here are some Wayanad Pictures.

Green Blanket...


PS: All this research for my visit to Kottayam during Naveen's Wedding, happy wedding mate and cheers for a great married life ahead.

m.m


My Dream Campaigns

I have had a few revolutionary campaigns brewing up in my mind rather I could say in my heart.

"Campaigns are successful even if they can get a few people read the entire idea" - mm


RR Campaign - RETURN the RUBBISH

How many of us have seen people from buses, car's, auto's throw trash or rubbish outside and just move on. And when you overtake them and look inside you will see that they are stylish, educated (yet moronic) (if you strain your nostrils you can smell their cheap perfume / deo)

This campaign aims to return the rubbish back to them, out comes a cup from the window, pick it up and hand it over to them...trust me you would have just reformed a habitual offender.


VV Campaign - VOICE to the VIOLATOR

How many of us have seen vehicle owners show utter disregard to the traffic rules, they look around to spot if there are cops and then vroom speed away with little regard to the traffic lights and people either crossing or vehicles coming dutifully obeying the rules. Again here there is a healthy competition between the literate and illiterate.

This campaign aims to honk your horn or raise your voice when ever you see someone trying to violate the rules... this treatment takes a time to treat the offender, but be the catalyst to start this chain reaction.

And yes there is a saying "Be the change that you want to see in others"

Hope we from the blogosphere can get these campaigns see the light of the day and make life peaceful for fellow human beings.

Be the guiding light / guiding force!
Enlighten yourself



m.m

Art of Seeing - The Magical Light

HESARAGHATTA WORKSHOP

Art of Seeing - The Magical Light with Mahesh Bhat.

Wide barren grasslands, sun blazing away, huge birds of prey, 8 photographers pounding the 300 acre land. A result of the 2 day workshop with Mahesh Bhat at Hesaraghatta.

Please click on the picture or link below.

IMG_3093 link

Would love to have your comment and critique.

m.m

Monday, January 18, 2010

Photographic Expedition


Recently had been on a 4 day wildlife workshop with Kalyan Varma, here is my meager collection. Though I wanted to write a minute by minute scale up of the entire expedition, I figured out that it was going to be a tough job recreating the fun, joy & excitement that we had during the 4 days hence I decided that the pictures were self explanatory.


http://www.wow-wonderworks.blogspot.com/2010/01/rainforest-expedition.html

http://www.flickr.com/photos/minmaxmim/collections/72157623089758457/


Comment and critique would be great.

m.m

List of sightings and calls as identified by Dr Muthu from our team.

My sightings and clear identification stood at a record number 70 (all put together)

Valparai Rain forest expedition 8 – 11 january 2010

Birds List

1. Thickbilled Flowerpecker

2. Chloropsis

3. Whitebrowed bulbul

4. Purple rumped Sunbird

5. Block Drongo

6. Whitebellied drongo

7. Greater Coucal

8. Brahminy Kite

9. Osprey

10. Common Flameback Woodpecker

11. Yellow browed Bulbul

12. Common Iora

13. White Cheeked Bulbul

14. Common tailorbird

15. Scarlet Minivet

16. RedWhiskered bulbul

17. Green Bee eater

18. Red rumped swallow

19. Pacific swallow

20. Jungle babbler

21. Oriental honey Buzzard

22. Grey Wagtail

23. Pied bushchat

24. Common Mynah

25. Ruby throated bulbul

26. Long tailed Shrike

27. Hill Mynah

28. Mountain Imperial pigeon

29. Black Bulbul

30. Great Hornbill

31. Jungle mynah

32. Spotted dove

33. Golden oriole

34. Magpie robin

35. Chestnut tailed starling

36. Black shouldered Kite

37. Indian Roller

38. Jungle crow

39. House sparrow

40. Common crow

41. Streak throated woodpecker male & female

42. Brown shrike

43. Shikra

44. Malabar parakeet

45. Rufous babbler

46. White bellied tree pie

47. Fairy blue bird

48. Pond heron

49. Little egret

50. Little cormorant

51. Asian Paradise flycatcher

52. Grey tit

53. Rufous tree pie

54. Small minivet

55. Brown cheeked fulvetta

56. House swift

57. Crested tree swift

58. Crested serpent eagle

59. Plain flower pecker

60. Plum headed parakeet.

61. White breasted waterhen

62. Red vented bulbul

63. Puff throated babbler (Call)

64. Pied kingfisher

65. Crimson fronted barbet

66. Grey breasted prinia

67. Palebilled flowerpecker

68. Black eagle

69. Malabar Trogon

70. Lesser fish eagle (? Grey headed fish eagle)

71. White breasted Kingfisher

72. Small blue kingfisher

73. Rufous woodpecker

74. Scimitar babbler

75. Cattle Egret

76. Kestrel

77. Scops Owl ( Call)

78. Jungle owlet ( Call)

79. Malabar Grey Hornbill

80. Racket tailed drongo

81. Clamorous reed warbler

82. Ashy Prinia

83. Blyth’s reed warbler

84. Booted warbler

85. Malabar whistling thrush

86. Grey Jungle fowl

87. Oriental white eye

88. Black and orange flycatcher

89. Falcon?

90. Nuthatch?

91. White bellied shortwing

92. Leaf warbler

93. Nilgiri Pipit

94. Blue rock thrush

95. Black lored tit

96. Red spur fowl ( Call )

97. Gray headed canary flycatcher

98. Wynad laughing thrush (call)

99. Gray breasted laughing thrush

100. Emerald dove

101. Indian pitta

102. Hoopoe

103. Blue bearded bee eater

104. Desert wheatear

105. Vernal hanging parrot

106. Dark fronted babbler

107. Purple sunbird

108. Speckled piculet

109. Crimson backed sunbird

Mammals List

1. Malabar giant squirrel

2. Jungle striped squirrel

3. Wild boar

4. Brown mongoose

5. Striped mongoose

6. Barking deer

7. Mouse deer

8. Brown palm civet

9. Large brown Flying squirrel

10. Asian Elephant

11. Common langur

12. Nilgiri Langur

13. Lion Tailed Macaque

14. Bonnet Macaque

15. Nilgiri tahr

16. Bat ( Species not idied)

17. Small Indian civet (camera trap)

18. Gaur

19. Porcupine ( camera trap)

20. Hare



Dragon flies and Damsel flies

1. Stream ruby

2. Stream glory

3. Clear winged Forest glory

4. Saffron faced blue dart

5. Black stream Glider

6. Crimson Marsh glider

7. Asian slim

8. Green marsh hawk

BUTTERFLIES

Only those that came to my mind

( List incomplete as not recorded )

1. Chestnut sailor

2. Malabar rose

3. Peacock

4. Greater orange tip

5. Red disc

Tuesday, January 05, 2010

java.lang.OutOfMemoryError: PermGen space

We encountered the dreaded java.lang.OutOfMemoryError: PermGen space error



What does it means - Permgen Space is the space where the class files are all loaded for the first time and there after they are loaded or referenced from there. This error means there is a hell lot of duplicate classes being loaded and not all are being unloaded. These duplicate class instances are cluttering the permgen space and resulting in this error. One expects only only class instance of a java file. This is basically a memory leak.

Temporary Solution -
'start tag' jvmarg value="-XX:+UseConcMarkSweepGC" 'end tag'
'start tag' jvmarg value="-XX:+CMSPermGenSweepingEnabled" 'end tag'
'start tag' jvmarg value="-XX:+CMSClassUnloadingEnabled" 'end tag'
- These allow perm gen sweeping and allows class unloading, I guess it works really well when there is no memory leak but low perm gen space allocated, so when there is a space deficiency it automatically unloads few classes and then reloads them when needs. Yes there will be a performance issue but am sure not many will notice it.
'start tag' jvmarg value="-XX:PermSize=256M" 'end tag'
'start tag' jvmarg value="-XX:MaxPermSize=512M" 'end tag'
- you can keep increasing this value between 128 - 512 or more but this will only delay the time after which the error is thrown.

Tools - Few tools that I used for analysing this issue
a) MAT - Eclipse Memory Analyser Tool (Also recommended - has some great features to zero in on the suspect / culprit)
b) IBM Heap Analyser
c) JConsole
d) Yourkit - trial version for 14 days (you better solve your issue within 14 days :)) [Highly recommended - it allows monitoring and a hell lot of features]
e) JMAP


Analysis & Solution -
There are two ways of going about this, you would never programmatically create duplicate classes and load them into the permgen, so the only few options are
First Way
1) Are you using different classloaders or custom classloaders to load few classes? If yes there are cases that same classes are loaded often because of different classloader instances. Check you own code.
Second Way
1) Analyse the various frameworks that you are using, check in particular if you in your code or these frameworks use dynamic proxying, which means creating proxy classes at run time for loosely coupling the classes - http://java.sun.com/j2se/1.4.2/docs/guide/reflection/proxy.html
PS: A tip - check if any framework uses CGLIB, in my case it was this.

Approach 1
1) I used jmap on the unix machine and got the heap reproduced in a file called heap.bin.
2) Then open the heap.bin using the free tool IBM Heap Analyser (ha36.jar Let me know if you need it) or MAT or Yourkit.
3) Now you can view different details of the heap, like duplicate class, which objects is being created in large number or objects based on size etc.
4) Now go to class instances and search for duplicate classes or sort the classes by name and then go through the list.
5) You should be able to see at some point few duplicate classes being loaded and they would have different extension
example- Class ABC you can see Class ABC, Class ABC$$EnchancerByCGLIB$$9a6119f_32$$FastClassByCGLIB$$123456, Class ABC$$EnchancerByCGLIB$$9a6119f_33$$FastClassByCGLIB$$123453, Class ABC$$EnchancerByCGLIB$$9a6119f_34$$FastClassByCGLIB$$123454, Class ABC$$EnchancerByCGLIB$$9a6119f_35$$FastClassByCGLIB$$123455 etc etc
6) Now you know this class is being created by CGLIB / dynamic proxying and because they are all different classes all together they will be surely kept in the perm gen adding to the clutter and the error.

Approach 2
1) Yourkit attaches to the live running application - the process is given in their site.
2) Monitor the live application and keep checking the permgen and number of classes loaded and unloaded - if the classes loaded keeps increasing even after a threshold we know we are in trouble (jconsole also can be used to see the classes loaded and unloaded)
3) In your kit keep checking the class instances and search for duplicate classes or sort the classes by name and then go through the list.
4) You should be able to see at some point few duplicate classes being loaded and they would have different extension
example- Class ABC you can see Class ABC, Class ABC$$EnchancerByCGLIB$$9a6119f_32$$FastClassByCGLIB$$123456, Class ABC$$EnchancerByCGLIB$$9a6119f_33$$FastClassByCGLIB$$123453, Class ABC$$EnchancerByCGLIB$$9a6119f_34$$FastClassByCGLIB$$123454, Class ABC$$EnchancerByCGLIB$$9a6119f_35$$FastClassByCGLIB$$123455 etc etc
5) Now you know this class is being created by CGLIB / dynamic proxying and because they are all different classes all together they will be surely kept in the perm gen adding to the clutter and the error.
6) This list will only keep increasing as time flies / more requests are being processed.


Solution -
1) Now check which version of the framework you are using and check any recorded bug against it - I was using cglib-nodep-2.1_3.jar and it seems to have a weak reference to all the classes that it creates causing this clutter. I then had to upgrade Spring to spring 2.5.6.SEC01, Hibernate and CGLIB to their production stable releases.
2) After this fix / upgrade I took regular imprints / monitored it live and found there were no more duplicate classes being created.
2.1) Another way is to take regular heap imprints and you would see that there is pattern say heap1 = 10 MB, heap2 = 50 MB, heap3 = 100 MB, heap4 = 80 MB, Heap5 ~= 80 MB.
In the case of the error prone application / memory leak plagued application the pattern would be heap1 = 10 MB, heap2 = 50 MB, heap3 = 100 MB, heap4 = 120 MB, Heap5 = 140 MB....


PS: Jconsole can be used to see the heap growth, perm gen growth, class loading, class loading etc at run time. All the graphs can have peaks and downs but must even out in due course, if they keep going north then you know for sure you are going to have trouble.

Few More
jmap -permstat 18254 > permstats_2.txt
jmap -histo:live 18254 > histo_live.txt
jmap -histo 18254 > histo.txt
-XX:-TraceClassLoading Trace loading of classes.
-XX:-TraceClassLoadingPreorder Trace all classes loaded in order referenced (not loaded). (Introduced in 1.4.2.)
-XX:-TraceClassResolution Trace constant pool resolutions. (Introduced in 1.4.2.)
-XX:-TraceClassUnloading Trace unloading of classes.

m.m

java.lang.OutOfMemoryError: Java heap space

We encountered the dreaded java.lang.OutOfMemoryError: Java heap space error.
How often do we hit this error and look in bewilderment.



What does it means - Means there is a hell lot of objects being created and not all are being marked for GC. These stray objects are cluttering the heap space and resulting in this error. This is basically a memory leak.

Temporary Solution - start tag jvmarg value="-Xmx892M" end tag- you can keep increasing this value between 256 - 1024 or more but this will only delay the time after which the error is thrown.

Tools - Few tools that I used for analysing this issue
a) jmap -heap:format=b 12345 (unix)
b) jps - for pid in windows
c) jmap -dump:format=b,file=heap.bin 12345 (windows)
d) IBM Heap Analyser
e) JConsole

Analysis & Solution -
1) I used jmap on the unix machine and got the heap reproduced in a file called heap.bin.
2) Then open the heap.bin using the free tool IBM Heap Analyser (ha36.jar). Let me know if you need it.
3) Now you can view different details of the heap, like duplicate class, which objects is being created in large number or objects based on size etc.
4) Now there is a option to get the leak suspects, it would list a few leak suspects - it would surely list few open source frameworks like Active MQ, Hibernate etc which means you will have to upgrade these to the latest production release from the framework providers.
5) Concentrate on any leak suspect either on your classes or your packages or on any java's Class used a lot in your class.
6) I was able to find a wrongly declared and used variable related to threadpoolexecutor which was causing a lot of hanging objects. (key is to find the link between a leak suspect and the way it is related to your code)
7) After fixing this I took regular heap imprints and analysed them and found that the leak suspect was missing.
8) After this fix my application starting running for almost double the time but I soon hit the dreaded java.lang.OutOfMemoryError: PermGen space, about which I shall write in the next post.
8.1) Another way of seeing the success of your fix is to take regular heap imprints and you would see that there is pattern say heap1 = 10 MB, heap2 = 50 MB, heap3 = 100 MB, heap4 = 80 MB, Heap5 ~= 80 MB.
In the case of the error prone application / memory leak plagued application the pattern would be heap1 = 10 MB, heap2 = 50 MB, heap3 = 100 MB, heap4 = 120 MB, Heap5 = 140 MB....

PS: Jconsole can be used to see the heap growth, perm gen growth, class loading, class loading etc at run time. All the graphs can have peaks and downs but must even out in due course, if they keep going north then you know for sure you are going to have trouble.

Few more
jmap -permstat 12345 > permstats_2.txt
jmap -histo:live 12345 > histo_live.txt
jmap -histo 12345 > histo.txt
-XX:-TraceClassLoading Trace loading of classes.
-XX:-TraceClassLoadingPreorder Trace all classes loaded in order referenced (not loaded). (Introduced in 1.4.2.)
-XX:-TraceClassResolution Trace constant pool resolutions. (Introduced in 1.4.2.)
-XX:-TraceClassUnloading Trace unloading of classes.

m.m

Friday, January 01, 2010

HappY new Year twenty ten

Amidst prayers, crackers, well wishers and songs, 2010 entered our lives smoothly...

Wish you all a Gala, Great and Grand new year 2010. Let the new year bring in all the great things that you have wishes for.

Moods Of 2009

An optimist stays up until midnight to see the new year in. A pessimist stays up to make sure the old year leaves. ~Bill Vaughan

People are so worried about what they eat between Christmas and the New Year, but they really should be worried about what they eat between the New Year and Christmas. ~ Author Unknown

Pictures of 2009 | Photographic Portal


m.m