Satyavati (mother of vyasa) was the daughter of a cursed apsara (celestial nymph) named Adrika. Adrika was transformed by a curse into a fish, and lived in the Yamuna river. When the Chedi king, Vasu (better-known as Uparicara-vasu), was on a hunting expedition he had a nocturnal emission while dreaming of his wife. He sent his semen to his queen with an eagle but, due to a fight with another eagle, the semen dropped into the river and was swallowed by the cursed Adrika-fish. Consequently, the fish became pregnant.
The chief fisherman caught the fish, and cut it open. He found two babies in the womb of the fish: one male and one female. The fisherman presented the children to the king, who kept the male child. The boy grew up to become the founder of the Matsya Kingdom. The king gave the female child to the fisherman, naming her Matsya-gandhi or Matsya-gandha (“She who has the smell of fish”) due to the fishy odor which came from the girl’s body. The fisherman raised the girl as his daughter and named her Kali (“the dark one”) because of her complexion. Over the course of time, Kali earned the name Satyavati (“truthful”). The fisherman was also a ferryman, ferrying people across the river in his boat. Satyavati helped her father in his job, and grew up into a beautiful maiden.
One day,when she was ferrying the rishi (sage) Parashara across the river Yamuna, the sage wanted Kali to satisfy his lust and held her right hand. She tried to dissuade Parashara, saying that a learned Brahmin of his stature should not desire a woman who stinks of fish. She finally gave in, realizing the desperation and persistence of the sage and fearing that if she did not heed to his request, he might topple the boat midstream. Kali agreed, and told Parashara to be patient until the boat reached the bank.
On reaching the other side the sage grabbed her again, but she declared that her body stank and coitus should be delightful to them both. At these words, Matsyagandha was transformed (by the powers of the sage) into Yojanagandha (“she whose fragrance can be smelled from across a yojana”). She now smelled of musk, and so was called Kasturi-gandhi (“musk-fragrant”).
When Parashara, tormented with desire, approached her again she insisted that the act was not appropriate in broad daylight, as her father and others would see them from the other bank; they should wait till night. The sage, with his powers, shrouded the entire area in fog. Before Parashara could enjoy himself Satyavati again interrupted him to say that he would enjoy himself and depart, robbing her of her virginity and leaving her shamed in society. The sage then blessed her with virgo intacta. She asked Parashara to promise her that the coitus would be a secret and her virginity intact; the son born from their union would be as famous as the great sage; and her fragrance and youth would be eternal.
Parashara granted her these wishes and was satiated by the beautiful Satyavati. After the act the sage bathed in the river and left, never to meet her again. The Mahabharata abridges the story, noting only two wishes for Satyavati: her virgo intacta and everlasting sweet fragrance.
Ecstatic with her blessings, Satyavati gave birth to her baby the same day on an island in the Yamuna. The son immediately grew up as a youth and promised his mother that he would come to her aid every time she called on him; he then left to do penance in the forest. The son was called Krishna(“the dark one”) due to his colour, or Dvaipayana (“one born on an island”) and would later became known as Vyasa – compiler of the Vedas and author of the Puranas and the Mahabharata, fulfilling Parashara’s prophecy.